Python提供了一个 名为PyCUDA 的封装,通过使用Nvidia CUDA API能够利用GPU的并行计算能力; Python 也有一个PyOpenCL模块能够用于任何GPU的并行计算。
而PyCUDA是主要针对NVIDIA的GPU的,为了使用该库,需要你有相应的GPU设备,以及安装了CUDA toolkit (CUDA toolkit下载地址);
Step1 安装PyCUDA
安装前提是确保你装了python,cuda;
window下 到PyCUDA下载链接 下载对应CUDA版本,python版本,系统版本的安装文件(以.whl结尾的文件);
推荐使用anaconda环境,然后打卡个prompt终端,用pip 安装上面下载的whl文件;
pip istall xxxxx-your-download-file-xxx.whl
为了确保安装完成,用ipython打开,输入
import pycuda
看是否报错,如没有报错则表示安装完成;
Linux 下安装的方式
我这边依然推荐anaconda环境管理;
打开个终端,运行如下指令:
conda install -c lukepfister pycuda
// 或者 conda install pycuda
然后用以下指令去验证是否安装完成;
如果import 没有报错,表示安装完成;
Step 2 查看GPU设备信息
编写个脚本,例如命名为 check_device.py, 内容如下:
import pycuda.driver as drv #设备相关的类
import pycuda.autoinit #自动初始化
drv.init() #该步骤必须执行
print("%d device(s) found." % drv.Device.count() ) #打印发现的设备数量
for i in range(drv.Device.count()):
dev=drv.Device(i) #索引第 i 个GPU
print("Device #%d: %s" % (i,dev.name())) #打印GPU名称
print("Compute Capability: %d.%d" % dev.compute_capability()) #第i个 GPU计算能力
print("Total Memory: %s GB" % (dev.total_memory()//(1024*1024*1024))) #内存
attributes=[(str(prop),value) for prop,value in list(dev.get_attributes().items())]
attributes.sort()
n=0
for prop,value in attributes: #属性以及属性值
print(" %s: %s" % (prop,value),end=" ")
n=n+1
if(n%2==0):
print(" ")
然后用python check_device.py运行,输出如下(设备太多,不一一列举):
转载:https://blog.csdn.net/c20081052/article/details/101673431
查看评论