mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-28 00:16:15 +01:00
4d5047e0e7
The main use of the performance test is to run it for two (or more) commits and compare the results. Doing that manually, is cumbersome. Add a (very hacky) script to help with that. For usage, see the comment on top of the script. Example: # first: meson build -Dprefix=/tmp/glib/ -Db_lto=true --buildtype release -Ddebug=true # then: GLIB_PERFORMANCE_FACTOR=17.06 \ PERF='perf stat -r 4 -B' \ PATCH="2.80.0..th/performance" \ COMMITS="2.79.3 2.80.0" \ /tmp/performance-run.sh -s 1 property-get property-set This will build the requested $COMMITS and print something like: ... >>> combined result > /tmp/glib-performance-output.all Running test property-get property-get: Property get per second: 35742719 37208288 (+4.1%) Running test property-set property-set: Property set per second: 32341232 36942399 (+14.2%) Running test property-get property-get: Property get per second: 36934401 37143479 (+0.566%) Running test property-set property-set: Property set per second: 38046387 38165548 (+0.313%) Running test property-get property-get: Property get per second: 34759576 36359761 (+4.6%) Running test property-set property-set: Property set per second: 35262505 37651733 (+6.78%) Running test property-get property-get: Property get per second: 37014537 32870906 (-11.2%) Running test property-set property-set: Property set per second: 36633026 38216846 (+4.32%) Performance counter stats for './build/gobject/tests/performance/performance -s 1 property-get property-set' (4 runs): 1,312.18 msec task-clock:u # 1.000 CPUs utilized ( +- 4.82% ) 0 context-switches:u # 0.000 /sec 0 cpu-migrations:u # 0.000 /sec 121 page-faults:u # 92.213 /sec ( +- 0.24% ) 5,221,701,009 cycles:u # 3.979 GHz ( +- 2.61% ) 19,035,814,175 instructions:u # 3.65 insn per cycle ( +- 0.00% ) 4,335,306,010 branches:u # 3.304 G/sec ( +- 0.00% ) 13,031 branch-misses:u # 0.00% of all branches ( +- 4.17% ) TopdownL1 # 10.3 % tma_backend_bound # 5.3 % tma_bad_speculation # 11.4 % tma_frontend_bound # 73.1 % tma_retiring ( +- 2.15% ) [1] 1.3127 +- 0.0634 seconds time elapsed ( +- 4.83% ) [2] 1.2631 +- 0.0253 seconds time elapsed ( +- 2.00% ) property-get: Property get per second: 35742719 , 36934401 , 34759576 , 37014537 ; 37208288 , 37143479 , 36359761 , 32870906 ; property-set: Property set per second: 32341232 , 38046387 , 35262505 , 36633026 ; 36942399 , 38165548 , 37651733 , 38216846 ; |
||
---|---|---|
.. | ||
meson.build | ||
performance-run.sh | ||
performance-threaded.c | ||
performance.c |