Philippe Waroquiers wrote: > 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).
You would need a cycle-accurate machine model, which valgrind is not. -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/ ------------------------------------------------------------------------------ _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users