0

我有一组 CUDA 应用程序,它们都通过cout. 我有一台带有 VS 和 NSight 插件的主机和一台带有 NSight 服务的目标机。但是,当我执行控制台应用程序时,它实际上在目标机器上运行(字面意思是弹出一个控制台)。

那么问题来了:我怎样才能让控制台显示在主机上,而只有 GPU 的东西在目标上执行?这甚至可能吗?

谢谢!

4

2 回答 2

1

简短的回答是目前不可能。目标上的应用程序由 Nsight Monitor 进程执行,但 Nsight Monitor 当前不将输出转发回主机。
目前,您唯一的选择是通过在目标上捕获应用程序的输出并以某种方式将其显示在主机上来自行处理。
如果此功能对您很重要,我建议您通过您的 Nvidia 开发人员帐户提交功能请求。

于 2013-06-18T07:45:06.827 回答
0

CUDA 应用程序完全在目标机器上运行,因此应用程序的控制台或 UI 只能在目标机器上看到。您可以在 VS 端(您的主机)的 GPU 代码中设置断点,它应该在那里中断。
如果您觉得应用程序退出太快并且没有按预期启动内核(并且您没有遇到断点),则可能是您没有在目标机器上部署所有必需的 DLL(例如 CUDART)。

于 2013-06-17T16:53:48.727 回答