ในแพลตฟอร์ม Linux มีเครื่องมือโปรไฟล์ (profiling tools) หลายตัวที่ยอดเยี่ยมสำหรับโปรแกรม C++ Valgrind เป็นหนึ่งในนั้น ใช้กันอย่างแพร่หลาย เป็นเครื่องมือเขียนโปรแกรมสำหรับการดีบักหน่วยความจำ (memory debugging), การตรวจจับการรั่วไหลของหน่วยความจำ (memory leak detection), และการโปรไฟล์ เราสามารถใช้ Valgrind โดยการส่งไบนารีให้มันและตั้งค่า tool เป็น callgrind
ขั้นตอนแรก สร้างไบนารีโดยการคอมไพล์โปรแกรม
$ g++ -o abc abc.cpp
จากนั้นใช้ valgrind เพื่อโปรไฟล์
$ valgrind --tool=callgrind ./abc
จะสร้างไฟล์ชื่อ callgrind.out.x คุณสามารถอ่านไฟล์นี้ได้โดยใช้เครื่องมือชื่อ kcachegrind
หากคุณใช้ gcc คุณสามารถใช้เครื่องมือโปรไฟล์ในตัวคือ gprof คุณสามารถใช้ขณะคอมไพล์ไฟล์ได้ดังนี้
$ g++ -o abc abc.cpp -g -pg