From: John L. <le...@mo...> - 2003-07-28 16:00:46
|
OProfile is a powerful system-wide source profiler for Linux. OProfile 0.6 has been released. OProfile is still in alpha, but has been proven stable for many users. Release notes ------------- For 2.2 kernels, the module must be compiled as the same user that owns the kernel source tree. nosmp is not supported in kernels before 2.4.10 (bug #463087). The pre-emptable kernel option is not supported in 2.4 (bug #478516). Power management on laptops can be incompatible with OProfile in 2.4 (bug #554927). New features ------------ opcontrol has a new way of specifying performance counter events. Instead of: opcontrol --ctr0-event=CPU_CLK_UNHALTED --ctr0-count=30000 the new form looks like : opcontrol --event=CPU_CLK_UNHALTED:30000 (There is also a full form CPU_CLK_UNHALTED:30000:0:1:1 for specifying unit mask and kernel/user counting). The hardware counters are automatically allocated as needed. opcontrol also accepts the "--option blah" form and has short options for some common operations. The post-profiling analysis tools have been massively reworked. op_time and oprofpp have been replaced by a single tool called opreport. This allows a high level of flexibity in selecting which results to profile, for example : opreport --symbols --exclude-symbols boring_function --threshold=5% --debug-info \ event:DATA_MEM_REFS session:test --merge lib \ image:/usr/bin/mytest,/usr/lib/libmytestlib.so op_to_source has been replaced by a similar tool called opannotate, and the gprof output ability of oprofpp is now performed by opgprof. Symbols with no samples are no longer output in the results, and the default sort order has changed so that higher numbers are at the top. By default, short filenames (basename of the file) are shown instead of the full paths. Simple demangling is done by default. Dependent images such as libraries and kernel modules using the --separate option are now shown by default (the older tools required the -k option). The new code is also significantly faster. In general, the new tools can be used in a similar fashion to the old ones : "op_time -r" -> "opreport -x" "op_time -rk" -> "opreport" "op_time -kl" -> "opreport -l" "oprofpp -kl ./app" -> "opreport -l ./app" etc. Bug fixes --------- Handling of sample counts in sections with no symbols such as .plt is now more accurate in reporting the source of the sample. Some unit mask description fixes. The GUI now works properly with 2.5 timer interrupt mode. opcontrol --save errors out properly if there is no current session. Fixed reading of 2.5 kernel's module information when unloading is disabled. Pretty printing of the chosen unit mask values has been fixed. |