2013-03-25 70 views
5

总体目标是使用NumbaPro在GPU上运行某些功能(在OSX 10.8.3上)。Anaconda Acclerate/NumbaPro CUDA链接错误OSX

开始之前,我只是想让所有的东西都成立。根据this page我安装了CUDA,注册为CUDA开发人员,下载了Compiler SDK并设置了NUMBAPRO_NVVM =/path/to/libnvvm.dylib环境变量。

然而,运行此基本测试功能:

from numbapro import autojit 

@autojit(target='gpu') 
def my_function(x): 
    if x == 0.0: 
     return 1.0 
    else: 
     return x*x*x 

print my_function(4.4) 
exit() 

带来了这个错误:

File ".../anaconda/lib/python2.7/site-packages/numba/decorators.py", line 207, in compile_function 
    compiled_function = dec(f) 
File "...lib/python2.7/site-packages/numbapro/cudapipeline/decorators.py", line 35, in _jit_decorator 
File "...lib/python2.7/site-packages/numbapro/cudapipeline/decorators.py", line 128, in __init__ 
File "...lib/python2.7/site-packages/numbapro/cudapipeline/environment.py", line 31, in generate_ptx 
File "...lib/python2.7/site-packages/numbapro/cudapipeline/environment.py", line 186, in _link_llvm_math_intrinsics 
KeyError: 1 

我试过@ vectorize'ing代替autojit,同样的错误。 @autojit本身没有目标正常工作。

任何想法?

+1

你也可以问问NumbaPro的人。我注意到你在该网站上的链接说:“GPU支持正在迅速提高,但仍然是你可能遇到困难的一个领域。请告诉我们,如果你对我们的GPU支持有任何麻烦。”作为一款产品,希望您[在30天后付款](http://docs.continuum.io/numbapro/eula_numbapro.html#trial-period),我认为他们会提供某种支持。 – 2013-03-25 17:05:02

+0

这真的不是CUDA问题。我很想删除CUDA标签...... – talonmies 2013-03-25 17:10:09

+0

@RobertCrovella,我知道NumbaPro是一种付费产品,我正在使用[学术许可证]。(https://store.continuum.io/cshop/ academicanaconda)我会尝试给他们发送电子邮件,但我希望有一个快速和简单的修复。 – thearrow3456 2013-03-25 19:50:13

回答

5

为了后代的缘故,我问了Continuum Support。他们回应:

It seems that you are running a CUDA GPU with compute capability 1.x. NVVM only supports CC2.0 and above. We definitely should have a better error reporting and make it clear in the NumbaPro documentation for the supported compute capability.