https://bugs.kde.org/show_bug.cgi?id=384633
Bug ID: 384633 Summary: Add a simple progress-reporting facility Product: valgrind Version: 3.14 SVN Platform: Other OS: Linux Status: UNCONFIRMED Severity: normal Priority: NOR Component: general Assignee: jsew...@acm.org Reporter: jsew...@acm.org Target Milestone: --- This is a proposal for a small enhancement to Valgrind's debugging output. For long runs of Valgrind, I find it useful to have some rough indication as to how the run is progressing. This makes it possible, for example, to guess when approximately the program will reach some desired state. The attached patch adds a new command line flag, --progress-interval=number. This causes V to print a 1-line summary of progress every |number| seconds. For example, when starting Firefox with --progress-interval=10, I get lines like this --32411-- PROGRESS: U 110s, W 113s, 97.3% CPU, EvC 414.79M, TIn 616.7k, TOut 0.5k, #thr 67 --32411-- PROGRESS: U 120s, W 124s, 96.8% CPU, EvC 505.27M, TIn 636.6k, TOut 3.0k, #thr 64 --32411-- PROGRESS: U 130s, W 134s, 97.0% CPU, EvC 574.90M, TIn 657.5k, TOut 3.0k, #thr 63 --32411-- PROGRESS: U 140s, W 144s, 97.2% CPU, EvC 636.34M, TIn 659.9k, TOut 3.0k, #thr 62 --32411-- PROGRESS: U 150s, W 155s, 96.8% CPU, EvC 710.21M, TIn 664.0k, TOut 17.7k, #thr 61 --32411-- PROGRESS: U 160s, W 201s, 79.6% CPU, EvC 822.38M, TIn 669.9k, TOut 75.8k, #thr 60 Each line shows: U: total user time W: total wallclock time CPU: overall average cpu use EvC: number of event checks. An event check is a backwards branch in the simulated program, so this is a measure of forward progress of the program TIn: number of code blocks instrumented by the JIT TOut: number of instrumented code blocks that have been thrown away #thr: number of threads in the program >From the progress of these, it is possible to observe: * when the program is compute bound (TIn rises slowly, EvC rises rapidly) * when the program is in a spinloop (TIn/TOut fixed, EvC rises rapidly) * when the program is JIT-bound (TIn rises rapidly) * when the program is rapidly discarding code (TOut rises rapidly) * when the program is about to achieve some expected state (EvC arrives at some value you expect) * when the program is idling (U rises more slowly than W) I have found this very useful this past few months and would like to land it. -- You are receiving this mail because: You are watching all bug changes.