Valgrind со всеми его инструментами даст вам некоторую информацию:
cachegrind
- симулятор кеша
callgrind
- трассировка графа звонков - позволяет узнать стоимость звонков и показать, что происходит в вашей программе
massif
- информация об использовании памяти кучи
memcheck
- проверка утечки памяти
Кроме того, вы можете использовать более сложное программное обеспечение, такое как Intel VTune .
Если вы заинтересованы в деталях низкого уровня и реальных счетчиках оборудования, посмотрите на perfmon2 , у которого есть некоторые шансы попасть в основное ядро в будущем.
И ищите старые вопросы - на эту тему много сообщений.