我有一个看起来像这样的函数:
int doSomething() {
<C++ host code>
<CUDA device code>
<C++ host code>
<...>
}
我也想在 Linux 和 Windows 上以高精度(至少毫秒)测量此函数的运行时间。
我知道如何使用事件测量 CUDA 程序的运行时间,并且我找到了非常准确的库来测量我的进程使用的 CPU 时间,但我想测量整体运行时间。我无法以不同的方式测量这两个时间并将它们加在一起,因为设备代码和主机代码可以并行运行。
我想使用尽可能少的外部库,但我对任何好的解决方案都感兴趣。