37

Is there any tool, other than KCacheGrind, being able to view callgrind results? Preferably for Windows platform?

  • It is possible to use KCacheGrind on windows using KDE For windows (http://windows.kde.org/). There's a fair bit of bloat from the dependencies if you're installing it just for KCacheGrind though. – Alo Oct 28 '10 at 16:36
  • can anybody mention tools for mac platform ? – indianwebdevil Dec 17 '10 at 16:48
  • Do have a look at [Lailin Chen's answer](http://stackoverflow.com/a/4425999/993915) below – Pranav 웃 Dec 28 '12 at 12:56
  • 1
    1. Install WSL (Bash on Windows) 2. Install VcXsrv (newer version of XMing) and start the daemon. 3. In Bash on Windows: # apt-get install -y kcachegrind 4. Add line `export DISPLAY=localhost:0.0` to `~/.bashrc`. (Re-source `.bashrc` or restart shell if necessary). 5. $ kcachegrind 6. Be anazed about the kcachegrind window opening on your Windows Desktop! – strarsis Jul 27 '19 at 17:41
  • For those looking for setting up kcachegrind with WSL2: [How to set up working X11 forwarding on WSL2](https://stackoverflow.com/questions/61110603/how-to-set-up-working-x11-forwarding-on-wsl2) – janw Jul 30 '22 at 14:55
  • Now on windows 11 with wsl2 you can just launch X11 programs from the cli. No more need for XMing. It looks shitty though, maybe I'm missing some KDE packages but it's usable. – Gellweiler Feb 12 '23 at 20:40

7 Answers7

106

I have compiled kcachegrind on windows using QT4.7, here is the binary bundle (including the dot utility to generate call graph): http://sourceforge.net/projects/precompiledbin/files/kcachegrind.zip/download

Lailin Chen
  • 2,341
  • 3
  • 16
  • 10
10

Try WebGrind: https://github.com/jokkedk/webgrind

Runs on your local PHP server. Be careful, use XDebug profiling with the XDEBUG_PROFILE flag or otherwise you'll risk overwriting your profiling output when you open WebGrind (Since WebGrind is also a PHP web application). The WebGrind website also details other approaches to work around this. Cheers.

Pete
  • 1,305
  • 1
  • 12
  • 36
Mario Awad
  • 1,410
  • 17
  • 32
7

You can try WinCacheGrind.

acme
  • 14,654
  • 7
  • 75
  • 109
4

It seems that WinCacheGrind cannot open output of callgrind. I have not tried opening output of cachegrind, but it should work, I guess. From the Valkyrie page, (as of date) "Currently, Valkyrie supports Memcheck only, although work is in progress to handle Cachegrind and Massif."

CruiZen
  • 182
  • 2
  • 6
1

There's a new project called XCallGraph for viewing cachegrind files on Windows.

nnyby
  • 4,748
  • 10
  • 49
  • 105
1

I have tried these:

They're very similar but differ in details. I can recommend the QCacheGrind which is the most feature packed and has also a graphical representation, which can help to identify problems much faster.

David Ferenczy Rogožan
  • 23,966
  • 9
  • 79
  • 68
1

alleyoop and valkyrie (broken link) are alternative front ends.

May have enough suport for what you want, you can use mingw to compile for Windows native if SUA does not work out of the box.

Torxed
  • 22,866
  • 14
  • 82
  • 131
RandomNickName42
  • 5,923
  • 1
  • 36
  • 35
  • 3
    so nothing out there with pre-compiled binaries that works for windows? – rogerdpack Jul 09 '10 at 17:18
  • kcachegrind from the kde-installer should be precompiled. – Frank Osterfeld Dec 14 '10 at 17:41
  • Do you know, how to use SUA? I use to use Cygwin for several years already (and it's awesome, but very slow) and I was also trying to find how to use SUA, but I wasn't very successful. – David Ferenczy Rogožan Oct 07 '15 at 16:34
  • 1
    BTW I wonder why this answer is marked as accepted, since Valkyrie doesn't support CacheGrind profiles currently and the only information about Alleyoop and CacheGrind I was able to find was that it doesn't open it. Also neither of them have binaries for Windows. – David Ferenczy Rogožan Oct 07 '15 at 16:46