せっかくNVIDIAグラボが入っているPCが手に入ったのでPyCUDAで遊ぼうかと

環境
OS:Windows 10
CPU:core i7 8700k
RAM:32GB
GPU:GTX 1080


導入手順

Visual Studio 2017 community版をインストール


最新のcuda tool kit (cuda_10.0.130_411.31_win10)
をAll Install

最新のAnaconda 5.3(Python 3.7)
をAll Userにインストール
・Add Anaconda to the system PATH environment variable
・Register Anaconda as the system Python 3.7
の両方にチェックが入っていることを確認(多分片方チェックが外れている)

3-1
インストールできたか確認
cmd(コマンドプロンプト)でpythonと打ちpython 3.7 ::Anaconda・・・がでればOK

cmdを管理者権限で実行
pip install pycuda
でpycudaをインストール

4-1
cmdを開いて
pythonと打ちimport pycuda
ができるか確認

4-2
次にpythonでテストプログラム
import pycuda.gpuarray as gpuarray
import pycuda.driver as cuda
import pycuda.autoinit
import numpy
a_gpu = gpuarray.to_gpu(numpy.random.randn(4,4).astype(numpy.float32))
a_doubled = (2*a_gpu).get()
print(a_doubled)
print(a_gpu)
ができるか確認。おそらく今の状態だとcl.exeのパスが通っていなくエラーがでるはず


cl.exeのパスを通す
環境変数のPATHに以下を追加
『C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64』

5-1
確認
cmdでclと打ち
Microsoft(R) C/C++ Optimizing Compiler Version・・・とでればパスが通っている

5-2
もう一回pythonでテストプログラム
import pycuda.gpuarray as gpuarray
import pycuda.driver as cuda
import pycuda.autoinit
import numpy
a_gpu = gpuarray.to_gpu(numpy.random.randn(4,4).astype(numpy.float32))
a_doubled = (2*a_gpu).get()
print(a_doubled)
print(a_gpu)
おそらく大量のWarningがでるがErrorはでないはず
→できた!(終了)
→やはりできない。この場合グラボのドライバをアップデートすることで私の場合は解決した。GPU-ZでCUDAにチェックが入っているか再度確認を


Warningの消し方・・・
よくわからんがまぁ動いているからヨシ!(分かったら追記します)