我正在尝试比较GPU和CPU的性能。对于NVIDIA GPU,我一直在使用cudaEvent_t
类型来获得非常精确的时间。
对于CPU,我一直在使用以下代码:
// 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中创建高分辨率计时器的方法吗?