我对 CUDA 调用 cudaEventSynchronize 有疑问。
AFAIK,它主动轮询事件,从而消耗 CPU 周期。如果我想让它同步,以便可以像内核执行一样产生 CPU,我该怎么做?
更具体地说,在以下情况下的预期行为是什么:
- 使用 CUDA_LAUNCH_BLOCKING=1 环境变量。
- 使用 cudaDeviceScheduleBlockingSync
- 使用 cudaDeviceScheduleYield
我一直在经历奇怪的行为,需要一些帮助来阐明这一点。Nvidia 有关特定技术方面的信息非常不愿意对此提供帮助……我想实现细节必须保密。
提前致谢,
何塞。