Windows での,pycuda のインストール手順を説明する.pycuda は,CUDA での演算を行う機能を持った Python パッケージである. このページでは、CUDAを使って、400個の掛け算を行ってみる.
※ GPUとは、グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能、乗算や加算の並列処理の機能などがある. CUDA とは、NVIDIA社が提供している GPU 用のツールキットである.GPU を用いた演算のプログラム作成や動作のための各種機能を備えている.ディープラーニングでも利用されている. NVIDIA 社のグラフィックス・カードが持つ GPU の機能を使うとき、CUDA を使うことになる。
【目次】
Windows での 7-Zip のインストール: 別ページ »で説明
【関連する外部ページ】
7-Zip の公式ページ: https://sevenzip.osdn.jp/
Windows での Python 3.10,関連パッケージ,Python 開発環境のインストール: 別ページ »で説明
【サイト内の関連ページ】
Python のまとめ: 別ページ »にまとめ
【関連する外部ページ】
Python の公式ページ: https://www.python.org/
Windows での Build Tools for Visual Studio 2022,NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.8,NVIDIA cuDNN v8.6 のインストールと動作確認: 別ページ »で説明
【関連する外部ページ】
試しに、https://documen.tician.de/pycuda/ で公開されているサンプルプログラムを動かしてみる.
Python プログラムを実行する
次の Python プログラムを実行する
import pycuda.autoinit import pycuda.driver as drv import numpy from pycuda.compiler import SourceModule mod = SourceModule(""" __global__ void multiply_them(float *dest, float *a, float *b) { const int i = threadIdx.x; dest[i] = a[i] * b[i]; } """) multiply_them = mod.get_function("multiply_them") a = numpy.random.randn(400).astype(numpy.float32) b = numpy.random.randn(400).astype(numpy.float32) dest = numpy.zeros_like(a) multiply_them( drv.Out(dest), drv.In(a), drv.In(b), block=(400,1,1), grid=(1,1)) print (dest-a*b)
Visual Studio にパスを通すために、システム環境変数 PATH に次のようなディレクトリを追加する.
※ 使いたい Visual Studio の版に合わせて調整すること. そのために「cl.exe」のファイルを検索すること.
Visual Studio 2019 Community のときの設定例
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.20.27508\bin\Hostx64\x64