В Mac OS X можно сделать "выборку" процесса, которая делает обратную трассировку каждого потока в указанном процессе определенное количество раз, а затем показывает, какие методы запущены (страница руководства Apple, пример вывода с моего Mac).
Как это сделать в Linux?
Вы можете попробовать утилиту perfhttp://www.brendangregg.com/perf.html. Он дает вложенный граф вызовов и объясняет время, проведенное в этом гнезде
.