今天想尝试一下加速的快感,于是就尝试着安装了一下gnumpy和cudamat.py,结果花费了一上午。
gnumpy需要cudamat的支持,于是先安装cudamat.py
在这里下载支持windows的cudamat.py, https://github.com/surban/cudamat, 随后cd到cudamat-master目录下,直接python setup.py install.进行配置和安装。
随后将cudamat文件夹生成的文件全部考到python site-packages文件夹下面的 cudamat文件,例如我的是: C:\Python27\Lib\site-packages\cudamat-0.3-py2.7.egg
这时候在python idle里面输入import cudamat ,我这里报错了“unicodedecodeerror ascii codec cant decode byte 0xb0……” 具体的解决办法请看我的另一篇博文:http://blog.csdn.net/vola9527/article/details/41075405。
解决完之后,import cudamat就成功了哦~
gnumpy的安装比较简单:google一下,下载之后 python setup.py install就OK了~
借用一下别人的程序:
'''
test cudamat and gnumpy
'''
#!/usr/bin/python
import gnumpy
import numpy
from time import time
ox=[range(1000) for x in range(1000)]
oy=[range(1000) for y in range(1000)]
m=gnumpy.garray(ox)
n=gnumpy.garray(oy)
p=numpy.array(ox)
q=numpy.array(oy)
def run_gnumpy(a,b):
st_g = time()
gnumpy.dot(a,b)
et_g = time()
return et_g-st_g
def run_numpy(a,b):
st_n = time()
numpy.dot(a,b)
et_n = time()
return et_n-st_n
print (str(run_numpy(p,q)/run_gnumpy(m,n)))
我的结果是 相比numpy,gnumpy快了:9581.41001192 九千多倍~厉害吧~