Jestem pod wrażeniem tego co ma tracy, ale czy może być coś więcej ?
Tracy jest jednym z lepszych w kategorii manualnych profilerów, takich gdzie sam zaznaczasz miejsca które chcesz prifilować (edit tracy też ma sampler, patrz komentarze, dzięki @mwl4). Inne dobre w tej kategorii to Remotery i Palanteer ale czy będą miały wiecej ficzerów to nie gwarantuję, raczej mogą zaoferować trochę inne podejście, które może podpasuje Ci lepiej.
W kategorii profilerów, które automatycznie samplują, czyli bez zmian w kodzie, to najlepszy jest Intel VTune. Dodali chyba nawet ostatnio darmową licencję.
(edit)
Aaa no i bym zapomniał o telemetry od RAD Studio, ale jest płatny i czy jest lepszy to też nie wiem. To co jest unikalne dla niego to fakt, że może samplować i zbierać manualne pomiary jednocześnie.
@several: Od dawna. Nawet to działa na Windowsie i na Linuxie. Musisz tylko uruchomić profilowany program jako Administrator.
Gdyby na początku nie działało, to polecam się nie poddawać i próbować do skutku, np. uruchomić ponownie komputer. Jak zacznie już działać to później działa zawsze.
Wtedy są dostępne takie kropki przy strefach:
I są statystyki funkcji.
Dodatkowo context switche i w jakich procesach siedział procesor w danym czasie (CPU data)
Polecam sobie przejrzeć tracy manual, możliwości jest więcej - https://github.com/wolfpld/tracy/releases/latest/download/tracy.pdf
Z mojego punktu widzenia istotne są jeszcze statystyki i opcje wyszukiwania. Poza wspomnianymi jeszcze dodam od siebie Superluminal - także korzysta z samplowania i manualnie dodawanych sekcji w kodzie i działa na wielu platformach. Z tego co wiem, ostatnio poprawili statystyki. Można sobie wypróbować wersję trial.
Zależy też na jakiej platformie chcesz profilować. Jeśli na Linuxie to dobrym profilerem może być orbit: https://github.com/google/orbit
Chandler Carruth na swoim wykładzie poleca perf konkurencyjny do VTune.