summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2014-11-14 12:18:12 +0000
committerDavid Mitchell <davem@iabyn.com>2014-11-29 23:16:54 +0000
commit9e7973fa06e83f9e8592f277685d066e2ff6abef (patch)
tree68433a64a990490ca494d1c25011beb99a868814 /lib
parent8b4fb3c6d41d4b5fcb35eae18a732259a0ebce34 (diff)
downloadperl-9e7973fa06e83f9e8592f277685d066e2ff6abef.tar.gz
add Porting/bench.pl
This tool runs code snippets found in t/perf/benchmarks (or similar) under cachegrind, in order to calculate how many instruction reads, data writes, branches, cache misses, etc. that one execution of the snippet uses. It will run them against two or more perl executables and show how much each test has gotten better or worse. It is modelled on the perlbench tool, but since it measures instruction reads etc., rather than timings, it is much more precise and reproducible. It is also considerably faster, and is capable or running tests in parallel. Rather than displaying a single relative percentage per test/perl combination, it displays values for 13 different measurements, such as instruction reads, conditional branch misses etc. This commit also changes the format of t/perf/benchmarks slightly; it becomes an AoH rather than a HoH (to allow checking for duplicate keys), and the test names themselves become a :: hierarchy.
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions