Home | History | Annotate | only in /external/valgrind/main/perf
Up to higher level directory
NameDateSize
bigcode.c23-Apr-20152.6K
bigcode1.vgperf23-Apr-201514
bigcode2.vgperf23-Apr-201522
bz2.c23-Apr-2015208.4K
bz2.vgperf23-Apr-201510
fbench.c23-Apr-201525.1K
fbench.vgperf23-Apr-201513
ffbench.c23-Apr-201510.2K
ffbench.vgperf23-Apr-201514
heap.c23-Apr-20151K
heap.vgperf23-Apr-201511
heap_pdb4.vgperf23-Apr-201519
Makefile.am23-Apr-2015726
Makefile.in23-Apr-201532.9K
many-loss-records.c23-Apr-20155.3K
many-loss-records.vgperf23-Apr-201590
many-xpts.c23-Apr-2015981
many-xpts.vgperf23-Apr-201564
README23-Apr-20153.1K
sarp.c23-Apr-20151.3K
sarp.vgperf23-Apr-201511
test_input_for_tinycc.c23-Apr-2015190.1K
tinycc.c23-Apr-2015690.1K
tinycc.vgperf23-Apr-201546
vg_perf23-Apr-201517.1K
vg_perf.in23-Apr-201517.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