我可以在驱动显示输出的设备上调试 CUDA 吗?

Can I debug CUDA on the device that drives the display output?

我在 VS2012 上开发。我用一张 GTX 960 显卡将 3 台显示器连接到我的电脑。

我知道不可能在驱动显示输出的同一设备上调试 CUDA。也许我看错了,但是当我转到 NSight->Windows->System Info->Display Devices 时,我可以看到显示器正在使用我的显卡。因为我只有一张显卡而且我可以调试(如 CUDA WarpWatch1 中的图像所示)我推断我可以在驱动显示输出的同一设备上调试或者它使用我的内置 Intel HD Graphics 但是不在显示设备中显示它

尽管您显然已经在某处阅读过,但 CUDA(和 NSight)多年来一直支持在活动显示 GPU 上使用 WDDM 驱动程序在 GPU 上进行调试。您可以在文档 here.

中查看支持的硬件、驱动程序和调试模式的确切矩阵

刚推出 CUDA 时,调试仅限于非显示卡。但是,此限制已在 Windows 和 Linux 上使用较新的硬件移除。