1

新款 MacBookPro 配备两个图形适配器,英特尔高清显卡和 NVIDIA GeForce GT 330M。OS X 在它们之间来回切换,这取决于工作负载、外部监视器的检测或 Rosetta 的激活。

我想用 CUDA 编程让我的脚湿透,不幸的是 CUDA SDK 似乎并没有处理这种来回切换。当 Intel 处于活动状态时,不会检测到任何 CUDA 设备,而当 NVidia 卡处于活动状态时,它会被检测到。所以我目前的解决方法是使用小工具 gfxCardStatus ( http://codykrieger.com/gfxCardStatus/ ) 来强制打开或关闭卡,就像我需要它一样,但这并不令人满意。

这里有人知道 Apple 祝福的 Apple 推荐的方法是(1)检测 CUDA 卡的存在,(2)在存在时激活这张卡吗?

4

2 回答 2

1

好吧,据说MacOsX应该在需要时来回切换,显然它不考虑CUDA。

在 Snow Leopard 中,Apple 引入了 OpenCL,它应该被任何应用程序用来对 GPU 进行编程,这可能是 Apple 推荐的实现方式,而不是 CUDA。

于 2010-06-13T19:39:25.507 回答
1

我正在 NVidia 平台上测试 CUDA 和 OpenCL。我所有的应用程序(我必须用 cuda 和 opencl 框架编写)都达到相同的性能(以 MFlops 衡量)。但是:如果您对 NVidia 使用本地内存优化,那么使用 ATI-GPU 运行此应用程序会出现一些问题。所以这不是真正的跨平台:(

于 2010-06-15T21:22:25.487 回答