Performance:Tools/oprofile: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Created page with "= Profiling Firefox or Fennec with oprofile = oprofile is a useful profiling tool for Linux. Using it does not require recompiling in many cases, which is nice. * You may need ...")
 
 
(One intermediate revision by one other user not shown)
Line 4: Line 4:


* You may need to compile with
* You may need to compile with
   ac_add_options --enable-optimize="-O0 -fno-omit-frame-pointer"
   ac_add_options --enable-optimize="-fno-omit-frame-pointer"
in order to get callgraph data properly.
in order to get callgraph data properly. Also you need debug symbols.
 
* You can then follow the following workflow:
* You can then follow the following workflow:
   sudo opcontrol --reset
   sudo opcontrol --reset
Line 16: Line 17:
== Notes ==
== Notes ==


* Callgraph data may not work on x86_64, sadly.
* Callgraph data may not work on x86_64 or ARM, sadly.

Latest revision as of 18:12, 1 February 2011

Profiling Firefox or Fennec with oprofile

oprofile is a useful profiling tool for Linux. Using it does not require recompiling in many cases, which is nice.

  • You may need to compile with
  ac_add_options --enable-optimize="-fno-omit-frame-pointer"

in order to get callgraph data properly. Also you need debug symbols.

  • You can then follow the following workflow:
  sudo opcontrol --reset
  sudo opcontrol --no-vmlinux
  sudo opcontrol --start --callgraph=10
  [... do stuff ...]
  sudo opcontrol --shutdown
  opreport --demangle=smart --symbols --callgraph ./fennec `ls *.so` &> o ; gedit o

Notes

  • Callgraph data may not work on x86_64 or ARM, sadly.