我尝试使用CUDA运行代码,但出现此错误,系统似乎有问题
完整代码:我得到了CUDACast #10a - Your First CUDA Python Program和no module named numbapro
import numpy as np
from timeit import default_timer as timer
from numba import vectorize
@vectorize(["float32(float32, float32)"], target='cuda')
def VectorAdd(a, b):
return a + b
def main():
N = 32000000
A = np.ones(N, dtype=np.float32)
B = np.ones(N, dtype=np.float32)
C = np.zeros(N, dtype=np.float32)
start = timer()
C = VectorAdd(A, B)
vectoradd_timer = timer() - start
print("C[:5] = " + str(C[:5]))
print("C[-5:] = " + str(C[-5:]))
print("VectorAdd took %f seconds" % vectoradd_timer)
if __name__ == '__main__':
main()
输出:
异常:版本不匹配:这是'cffi'软件包版本 1.13.1,位于“ /usr/local/lib/python2.7/dist-packages/cffi/api.pyc”中。当我们导入 最顶层的“ _cffi_backend”扩展模块,我们获得的版本为1.5.2, 位于 '/usr/lib/python2.7/dist-packages/_cffi_backend.x86_64-linux-gnu.so'。 这两个版本应该相等;检查您的安装。
也许是这个原因:
$which pip
/usr/bin/pip
答案 0 :(得分:1)
您必须尝试分别除去所有cffi软件包和已安装的版本1.5.2
。
sudo pip install cffi==1.5.2
或者您可以通过更新旧版本来确保版本一致。
sudo apt-get install python-cffi
希望它对您有帮助