cuda cudaprintf使用

  • cudaPrintfInit 和cudaPrintfEnd在你整个工程的使用中只需调用一次。显示结果不会自动显示在屏幕上,而是存储在缓存中,当调用cudaPrintfDisplay时被清除和显示。这个缓存的大小可以通过函数cudaPrintfInit(size_t bufferLen)的可选参数来指定。 
  • cudaPrintfEnd 简单的释放由cudaPrintfInit申请的存储空间。当cudaPrintfDisplay被调用的时候,存储在缓存buffer的输出output将被显示在控制台console。这个调用中的第二个参数用来控制显示(true)当前线程thread还是不显示(false)。第一个参数,在这个例子中被指定为stdout,用来定义cuPrintf 的日志文件log被发送到哪里(stdout标准输出)。
  • 另一个需要注意的地方,我已发现,使用cuPrintf影响我的kernels性能,大概是因为每次调用cuPrintf都会执行数据“传送”data transfer

                      以上来自"cuPrintf.cuh" 

原文地址:https://www.cnblogs.com/LzKlyhPorter/p/4609476.html