Мне записали программу в C++, который я хочу представить, и я не хочу перезапускать его, когда я запускаю и прекращаю представлять. Идеально я был бы профильным и использование ЦП и выделение памяти. Есть ли какой-либо инструмент, который позволит мне делать это? Я работаю на Linux.
Я бы порекомендовал Zoom от RotateRight - вы можете бесплатно загрузить 30-дневную пробную версию с их веб-сайта.
Если вы можете обойтись простыми метриками, в прошлом я реализовал простой профилировщик. Следите за памятью и временем. Отслеживайте начало и конец каждой функции, выведите строку в начале и в конце. Отслеживайте воспоминания до и после, если это важно. Все это контролируется переменной времени выполнения, которую вы можете изменять извне. В веб-приложении это может быть дополнительный параметр post / get. В программе толстого клиента это может быть дополнительный переключатель.
Затем, во время выполнения, вы можете начать сбор данных. Раньше я добавлял несколько уровней, чтобы обеспечить выборочный, а затем более подробный сбор данных.
Удачи.
Вы можете попробовать valgrind. Это набор различных модулей, собранных вместе в аккуратный пакет