Home | History | Annotate | only in /external/valgrind/perf
Up to higher level directory
NameDateSize
bigcode.c24-Aug-20163.5K
bigcode1.vgperf24-Aug-201640
bigcode2.vgperf24-Aug-201648
bz2.c24-Aug-2016208.4K
bz2.vgperf24-Aug-201610
fbench.c24-Aug-201625.1K
fbench.vgperf24-Aug-201613
ffbench.c24-Aug-201610.2K
ffbench.vgperf24-Aug-201614
heap.c24-Aug-20161K
heap.vgperf24-Aug-201611
heap_pdb4.vgperf24-Aug-201619
Makefile.am24-Aug-2016750
many-loss-records.c24-Aug-20165.3K
many-loss-records.vgperf24-Aug-201690
many-xpts.c24-Aug-2016981
many-xpts.vgperf24-Aug-201664
memrw.c24-Aug-20164.7K
memrw.vgperf24-Aug-201613
README24-Aug-20163.1K
sarp.c24-Aug-20161.3K
sarp.vgperf24-Aug-201611
test_input_for_tinycc.c24-Aug-2016190.1K
tinycc.c24-Aug-2016690.1K
tinycc.vgperf24-Aug-201646
vg_perf.in24-Aug-201617.1K

README

      1 =============================================================================
      2 Notes about performance benchmarks
      3 =============================================================================
      4 For each benchmark, here is a brief description and notes about its
      5 strengths and weaknesses.
      6 
      7 -----------------------------------------------------------------------------
      8 Artificial stress tests
      9 -----------------------------------------------------------------------------
     10 bigcode1, bigcode2:
     11 - Description: Executes a lot of (nonsensical) code.
     12 - Strengths:   Demonstrates the cost of translation which is a large part
     13                of runtime, particularly on larger programs.
     14 - Weaknesses:  Highly artificial.
     15 
     16 heap:
     17 - Description: Does a lot of heap allocation and deallocation, and has a lot
     18                of heap blocks live while doing so.
     19 - Strengths:   Stress test for an important sub-system; bug #105039 showed
     20                that inefficiencies in heap allocation can make a big
     21                difference to programs that allocate a lot.
     22 - Weaknesses:  Highly artificial -- allocation pattern is not real, and only
     23                a few different size allocations are used.
     24 
     25 sarp:
     26 - Description: Does a lot of stack allocation and deallocation.
     27 - Strengths:   Tests for a specific performance bug that existed in 3.1.0 and
     28                all earlier versions.
     29 - Weaknesses:  Highly artificial.
     30 
     31 -----------------------------------------------------------------------------
     32 Real programs
     33 -----------------------------------------------------------------------------
     34 bz2:
     35 - Description: Burrows-Wheeler compression and decompression.
     36 - Strengths:   A real, widely used program, very similar to the 256.bzip2
     37                SPEC2000 benchmark.  Not dominated by any code, the hottest
     38                55 blocks account for only 90% of execution.  Has lots of
     39                short blocks and stresses the memory system hard.
     40 - Weaknesses:  None, really, it's a good benchmark.
     41 
     42 fbench:
     43 - Description: Does some ray-tracing.
     44 - Strengths:   Moderately realistic program.
     45 - Weaknesses:  Dominated by sin and cos, which are not widely used, and are
     46                hardware-supported on x86 but not on other platforms such as
     47                PPC.
     48 
     49 ffbench: 
     50 - Description: Does a Fast Fourier Transform (FFT).
     51 - Strengths:   Tests common FP ops (mostly adding and multiplying array
     52                elements), FFT is a very important operation.
     53 - Weaknesses:  Dominated by the inner loop, which is quite long and flatters
     54                Valgrind due to the small dispatcher overhead.
     55 
     56 tinycc:
     57 - Description: A very small and fast C compiler.  A munged version of
     58                Fabrice Bellard's TinyCC compiling itself multiple times.
     59 - Strengths:   A real program, lots of code (top 100 blocks only account for
     60                47% of execution), involves large irregular data structures
     61                (presumably, since it's a compiler).  Does lots of
     62                malloc/free calls and so changes that make a big improvement
     63                to perf/heap typically cause a small improvement.
     64 - Weaknesses   None, really, it's a good benchmark.
     65 
     66