Pro optimalizace výkonu programu potřebujeme vědět, které jeho části se počítají nejdéle.

Náinstalujeme nástroje pro profilování:

sudo apt-get install valgrind kcachegrind graphviz

Zkompilujeme program s přidaným info (-g přepínač)

g++ -std=c++11 -g main.cpp -o program

A pustíme pod valgrind s nastaveným nástrojem callgrind

valgrind --tool=callgrind ./program [program_options]

výstupem je soubor typu callgrind.out.XXXXX (X čísla se stále zvětšují, poslední je aktuálnější), ten otevřeme pod kcachegrind

kcachegrind callgrind.out.20942

Tento program visualizuje kolik proběhlo volání každé řádky.