Как уже упоминалось, gprof - это один инструмент профилирования, который вы можете использовать. Однако есть проблема, он только подсчитывает время процессора, он в основном не может видеть вызовы ввода / вывода. Это также смущает рекурсия. Callgrind также имеет аналогичные проблемы, KCacheGrind использует Valgrind, который фактически интерпретирует весь код. В конце концов, однако, эти варианты, лично, для малого масштаба я бы go с gprof просто из-за его удобства и документации.