Questions tagged [google-perftools]

Google performance tool for CPU and Heap profiling

Google performance tool for CPU and Heap profiling. Originally known as google-perftools, later renamed to gperftools.

Main script of profile analysing in gperftools is called pprof (or sometimes google-pprof)

There are libraries in gperftools project: libtcmalloc.so and libprofiler.so

http://code.google.com/p/gperftools

40 questions
16
votes
1 answer

How to profile RSpec with perftools and bundler?

I need to profile the test suite that I usually run with bundle exec rspec spec/ and produce the GIF image. What is the command to run the perftools.rb so that it works correctly with bundler?
Dmytrii Nagirniak
  • 23,696
  • 13
  • 75
  • 130
14
votes
2 answers

Line number in Google Perftools CPU profiler on MacOSX

I am trying to profile some C++ programs on MacOSX. So I built google-perftools, wrote a program, compiled using MacPorts g++ 4.7, with -g compiler flag, and linked to libprofiler. Then I ran: CPUPROFILE=cpu.profile ./a.out Then I ran pprof to…
Kan Li
  • 8,557
  • 8
  • 53
  • 93
11
votes
2 answers

How to use pprof in Go program

How to use pprof in Go program? There is a Go package named net/http/pprof,but I can't use it. The document says go tool pprof http://localhost:6060/debug/pprof/heap ,which does not work. And,what does the below _ mean? import _ "net/http/pprof"
Codefor
  • 1,318
  • 2
  • 13
  • 22
10
votes
2 answers

How exactly does gperftools CPU profiler start?

gperftools documentation says that libprofiler should be linked into a target program: $ gcc myprogram.c -lprofiler (without changing a code of the program). And then program should be run with a specific environment…
Daniel Vartanov
  • 3,243
  • 1
  • 19
  • 26
8
votes
1 answer

How to interpret addresses in Google perf tools CPU profiler

My C++ program is consuming a lot of CPU, and more so as it runs. I used Google Performance Tools to profile CPU usage, and this is what I got: (pprof) top Total: 1343 samples 1330 99.0% 99.0% 1330 99.0% 0x0000000801dcb11c 7 0.5%…
jules
  • 386
  • 4
  • 13
7
votes
1 answer

How does gperftools work under the hood?

I am looking for a simple explanation of how gperftools works. So far, this is what I have learned: It runs a stop-the-world sampler. In other words, it periodically stops the program being profiled to collect information. Golang's pprof library…
Ben Sandler
  • 2,223
  • 5
  • 26
  • 36
7
votes
2 answers

gperftools cpu profiler does not support multi process?

according to the document, http://gperftools.googlecode.com/svn/trunk/doc/cpuprofile.html, the cpu profiles does support multi process and will generate independent output file: If your program forks, the children will also be profiled (since they …
ZRJ
  • 181
  • 1
  • 7
7
votes
1 answer

SIGPROF kills my server when using google perftools

I have a multithreaded server process, written in C/C++ that I am trying to profile with Google perftools. However when I run the process with perftools, pretty soon my server stops with a "syscall interrupted" error, that I think is being caused…
brooks94
  • 3,836
  • 4
  • 30
  • 57
7
votes
2 answers

Google Performance Tools (profiler) tutorial

I just downloaded and built the libraries/executables of Google Performance Tools. Before I run the CPU profiler on the application that I want to investigate, I want to learn how to use the tools properly perhaps on a sample application. What would…
stanigator
  • 10,768
  • 34
  • 94
  • 129
6
votes
1 answer

Google perftool cannot read file "libprofiler.so.0"

I am trying the google performance tool for CPU time profiling. However, I had encountered some problem that I cannot read the shared library file "libprofiler.so.0" I had read the README of google performace tool, there are 3 steps in the…
yoco
  • 1,404
  • 1
  • 14
  • 19
5
votes
2 answers

Has anybody used Google Performance Tools?

Looking for feedback on : http://code.google.com/p/google-perftools/wiki/GooglePerformanceTools
Mark Harrison
  • 297,451
  • 125
  • 333
  • 465
4
votes
1 answer

How to find CPU Usage in google profiler

I am using Google CPU Profiling tool. http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html On the documentation it is given Analyzing Text Output Text mode has lines of output that look like this: 14 2.1% 17.2% 58 …
Vivek Goel
  • 22,942
  • 29
  • 114
  • 186
4
votes
1 answer

Which profiler is more accurate: OProfile or Google Performance Tools?

I found two great profilers: OProfile Google Performance Tools Have anyone tried them both? Which is better?
Łukasz Lew
  • 48,526
  • 41
  • 139
  • 208
4
votes
0 answers

google CPU profiler error: stack trace depth >=2**32

I am trying to profile my program using the google CPU perf tools, but when I try to analyze the .prof file, I get an error like this: At index 5519 (address 0126170): node1.prof: stack trace depth >= 2**32 I thought maybe at first that it was…
Kyle
  • 217
  • 2
  • 13
3
votes
1 answer

Why is Kernel#require taking up 45% of my get time?

In an effort to speed up my test suite I profiled it and got the following Total: 1445 samples 650 45.0% 45.0% 1171 81.0% Kernel#require 261 18.1% 63.0% 261 18.1% garbage_collector 47 3.3% 66.3% 168 11.6%…
1
2 3