У меня есть программа на C, которая предназначена для параллельной работы на нескольких процессорах. Мне нужно иметь возможность записывать время выполнения (которое может быть от 1 секунды до нескольких минут). Я искал ответы, но все они, кажется, предлагают использовать функцию clock()
, которая затем включает в себя подсчет количества тактов, которые программа взяла, деленного на значение Clocks_per_second
.
Я не уверен, как рассчитывается значение Clocks_per_second
?
В Java я просто беру текущее время в миллисекундах до и после выполнения.
Есть ли подобное в C? Я посмотрел, но я не могу найти способ получить что-то лучше, чем второе разрешение.
Я также знаю, что в качестве опции можно использовать профилировщик, но я сам собираюсь реализовать таймер.
Спасибо