printf()
内核中的CUDA可以打印到我的流程的标准输出流中。现在,我至少要从此开始将此打印输出重定向到任意输出流。我的意思任意流,这不只是一个文件描述符(如被要求在这里) -我希望能够使用stringstreams,伐木基础设施等。
如果可能的话,我真的想做些什么,比如告诉单个内核将其printf()
输出发送到某个输出流。这可能吗?
注意:对于标记这两个人最喜欢的问题的那种善良的灵魂-您为什么喜欢我的问题足以使其成为最喜欢的问题,却不足以支持它?<不解。>
据我所知,这是不可能的。CUDA API不提供对输出将发送到的IO流的任何控制。
如果您想要比运行时提供的功能更精致的东西,那么最好的解决方案就是自己动手。在将对内核内printf的运行时支持添加到CUDA之前,NVIDIA(至少向开发人员提供)了一个名为cuprintf的实用程序,该实用程序允许内核将输出发送到主机控制台。我的建议是获取cuprintf的代码并破解您想要的东西。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句