yuuho.wiki

カオスの欠片を集めて知恵の泉を作る

ユーザ用ツール

サイト用ツール


tips:cuda:start

文書の過去の版を表示しています。


CUDA

基本事項

  • GPU 上で動く関数には __global__ または __device__ が付いている。
  • __global__ は C++ から直接呼び出す用の関数で
  • __device____global__ の関数内から呼び出される関数だと思う。
  • cudaMalloc で確保した GPUメモリに cudaMemcpy でCPU側からデータを移して
  • CUDAの関数を呼び出して実行されたら cudaMemcpy でCPU側のメモリにデータを移す。
  • CUDAの関数(カーネル)は関数名の後に <<<grid, threads>>> というテンプレート的な表記のものが付くのでわかりやすい。

CUDAにおける配列

Grid の中には複数の Block があり、Block の中には複数の thread がある。
画素の座標を知るには?

頻出データ構造/関数

  • dim3
  • cudaMalloc
  • cudaMemcpy
    • cudaMemcpyHostToDevice
    • cudaMemcpyDeviceToHost
  • cudaFree
  • cudaGetDeviceCount
  • cudaSetDevice
tips/cuda/start.1631797849.txt.gz · 最終更新: 2021/09/16 13:10 by yuuho