2013-02-20 23 views
0

我必须在GPU上使用Monte Carlo算法进行期权定价。我有两个选择:一个是NVIDIA GPU上的CUDA,另一个是OpenCL。我很困惑我应该使用哪个API。我知道与CUDA相比,OpenCl的开发可能需要更多的时间,但由于我更关心性能,我想知道我应该走哪条路,为什么?使用Monte Carlo Algo的期权定价

+0

仅供参考,在cuda [样本](http://docs.nvidia.com/cuda/cuda-samples/index.html)中有多种蒙特卡罗和期权定价样本代码,财务部分](http://docs.nvidia.com/cuda/cuda-samples/index.html#finance)和[库部分](http://docs.nvidia.com/cuda/cuda-samples/index .html#cudalibraries) – 2013-02-21 11:59:05

+0

@RobertCrovella,谢谢,但我只需要知道我应该走哪条路,OpenCL或CUDA?我不需要便携式解决方案,那么这是否意味着我必须使用CUDA? CUDA的性能会比openCL好吗? – gpuguy 2013-02-21 12:01:56

回答

3

CUDA和OpenCL是用于编程GPU的两种不同平台。 OpenCL是为异构平台像CPU,GPU,一个开放标准 ...而CUDA是具体NVIDIA GPU的。 作为一个工程经验法则,如果您希望可携带性继续使用OpenCL。如果您想要表现,请继续使用CUDA。

你可以找到更多关于他们在以下参考perofrmance:

+0

我想知道是否有一类openCL优于CUDA的应用程序? “CUDA比OpenCL最多执行30%...”的说法适用于所有类型的应用程序或仅适用于特定类别的应用程序? – gpuguy 2013-02-21 06:31:54

+0

@gpuguy:他们基于多种应用程序进行基准测试,如:图遍历,线性代数,光谱方法......:这是上述论文的幻灯片:http://www.ece.umn.edu/~wxiao/ ee5940/lecture10-1.pdf。它具有应用程序和性能 – Reza 2013-02-21 16:55:52