【发布时间】:2011-02-27 00:09:30
【问题描述】:
如果我想重写我的应用程序以利用 nVidia 的 CUDA SDK 的强大功能,那么不同的 SDK 产品(C++、Java、Python)之间的运行时性能是否有任何差异?
除了使用明显的语言之外,这 3 个 SDK 之间有什么区别吗?
【问题讨论】:
如果我想重写我的应用程序以利用 nVidia 的 CUDA SDK 的强大功能,那么不同的 SDK 产品(C++、Java、Python)之间的运行时性能是否有任何差异?
除了使用明显的语言之外,这 3 个 SDK 之间有什么区别吗?
【问题讨论】:
您的处理过程中受 CPU 限制的部分会对性能产生可衡量的影响。例如,如果您的 CUDA 数据需要在到达 GPU 之前进行预处理,那么用 Python 编写数值例程就不是最佳的了。
如果您的 CUDA 例程占主导地位(CPU 保持相对空闲),则任何绑定都是不错的选择。
最好先用 Python 等语言创建原型,如果发现性能瓶颈,则将该代码移至 C++。
【讨论】: