On Sun, 2014-08-17 at 02:47 -0700, Van Snyder wrote: > On Sun, 2014-08-17 at 09:48 +0200, Julian Seward wrote: > > On 08/16/2014 03:19 AM, Van Snyder wrote: > > > It seems that cachegrind could be extended to do complete precise > > > profiling. > > > > What do you mean by "complete precise profiling"? Can you clarify? > > Trace execution of every instruction and account for its execution time, > including the analyses that cachegrind does to model caches. > > Produce two reports, one sorted in decreasing order of the time spent on > each line of source, and another sorted in decreasing order of the time > spent in each basic block, at last basic blocks as they are discovered > by tracing execution. > > I used such a tool to productive advantage thirty years ago. It didn't > matter that the cost was eighty times the cost of running the program on > its own. > > Maybe cachegrind already does this, but the description isn't clear. See cachegrind user manual, indicating e.g. "... I cache reads (Ir, which equals the number of instructions ..." http://www.valgrind.org/docs/manual/cg-manual.html#cg-manual.overview For callgrind, see e.g. the description of --cache-sim=<yes|no>
What is not clear is how to compute exact execution time from the various stats (Ir, I1mr, Ilmr, Dr, D1mr, ...). (or maybe rather than exact execution time, correct relative execution time of each program piece). Philippe ------------------------------------------------------------------------------ _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users