Как быстро и надежно измерить время выполнения функции в C (то есть любой эквивалент функции Python% timeit?) - PullRequest
0 голосов
/ 26 октября 2019

В настоящее время я учусь C оптимизировать реализацию различных алгоритмов (которые в настоящее время я реализовал в Python).

Чтобы помочь мне сравнить реализации C и Python, япытаясь измерить время выполнения функции.

Используя Python, iPython REPL предлагает фантастическую функциональность %timeit, которая эффективно повторяет функцию много раз и отображает среднее время выполнения и индикацию изменения по сравнению ссколько раз это было выполнено? Это работает для времен выполнения, варьирующихся от наносекунд до многих секунд.

В C я читал о команде time, которая может быть добавлена ​​в код для сообщения о времени выполнения одного запуска. Однако это имеет два ограничения:

1) разрешение только в миллисекундах

2) это только однократное измерение.

Поэтому мой вопрос: есть ликакие-нибудь лучшие / альтернативные подходы или пакеты для C, которые позволят быстро, но точно (т.е. даже работают для быстрых функций времени ns-выполнения) отображать время выполнения?

...