我正试图在配备NVIDIA GTX 480主板的Windows 7 32位计算机上运行我的CUDA内核。我正在使用CUDA 4.1 32位工具包和VS 2010的Parallel Nsight 2.1版本。
我的程序的分析结果总是不定期地显示相同的警告: 消息:刷新记录,事件类型:范围,级别:50
在此事件之后,始终存在几毫秒的处理中断。然后GPU以之前的速度继续计算。
我没有在CUDA文档和网络上找到有关此警告的任何信息,我甚至不知道这是否只是在分析过程中出现的问题。
有谁知道这个警告是关于什么以及如何避免它?
答案 0 :(得分:1)
警告“Flush Record”用于显示Nsight CUDA Trace Activity何时向您的应用程序添加额外开销。这是为了让您解释高CPU活动的时段。无法删除此警告。你的申请没有做错任何事。
Nsight CUDA跟踪活动收集GPU工作开始和结束的时间戳,包括内核启动,内存副本和内存集。当应用程序在GPU上启动任务时,该工具会为任务分配跟踪记录,并对GPU编程以在记录中写入时间戳。时间戳的集合以不应破坏并发性的方式完成,并且不应使CPU停顿。工作完成后,工具会收集信息并将其传输到内存中。 Flush范围包括收集结果和写出信息的时间。这可以包括执行其他内核启动和从设备到主机复制内存的时间。当应用程序同步上下文(cuCtxSynchronize或cuda {Thread,Device} Synchronize)或用完跟踪记录时,该工具将收集结果。
我将输入一个错误来改进用户文档和工具提示。