Changes between Version 9 and Version 10 of Debugging/LowLevelProfiling/Perf


Ignore:
Timestamp:
Feb 15, 2013 9:05:57 PM (14 months ago)
Author:
nfrisby
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Debugging/LowLevelProfiling/Perf

    v9 v10  
    8989 
    9090which is great for pointing to the hotspots.  You can also annotate the source code (of the RTS) or the assembly, using `perf annotate`. 
     91 
     92== With NoFib == 
     93 
     94There is a slight subtlety to using perf on an individual nofib test. 
     95 
     96To more accurately measure changes in binary sizes, nofib strips the symbols out of the final executable. Therefore, the useful names like "stg_ap_p_info" and "s1ql_info" will not show up in the perf report output. IE The following commands will yield information that is difficult to use. 
     97 
     98{{{ 
     99$ cd nofib/your/favorite/test 
     100$ make clean; make boot; make NoFibRuns=0 >& log 
     101$ perf record ./test <test inputs> 
     102$ perf report 
     103}}} 
     104 
     105One workaround is to find the ghc options used in the log file and invoke `ghc <options from log> --make Main.hs -o test` directly. The useful symbol names will then show up in the `perf report` output. NB The symbols '''are''' in the .o files that nofib's make generates; only the linking must be done without make.