Я пытаюсь сравнить производительность GPU и CPU. Для графического процессора NVIDIA я использовал типы cudaEvent_t
, чтобы получить очень точное время.
Для процессора я использовал следующий код:
// Timers
clock_t start, stop;
float elapsedTime = 0;
// Capture the start time
start = clock();
// Do something here
.......
// Capture the stop time
stop = clock();
// Retrieve time elapsed in milliseconds
elapsedTime = (float)(stop - start) / (float)CLOCKS_PER_SEC * 1000.0f;
По-видимому, этот фрагмент кода является только хорошо, если вы считаете в секундах. Также,результаты иногда получаются довольно странными.
Кто-нибудь знает, как создать таймер с высоким разрешением в Linux?