タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

cudaに関するendorのブックマーク (4)

  • 【CUDA】グリッド,ブロック,スレッド - 緑茶思考ブログ

    CUDA勉強中 CUDA by Exampleからのメモ. #define N 1024 __global__ void add(int *a, int *b, int *c){ //int tid = threadIdx.x; if(tid < N){ c[tid] = a[tid] + b[tid]; } } といったベクトルの加算をデバイスにさせたいときに、どうブロックやスレッドを分ければよいか。 手元の環境(QuadroK5000)だと、最大ブロック数65535、最大スレッド/ブロック数は1024 長さN:1024のベクトルを計算する場合 add<<<N,1>>>(dev_a, dev_b, dev_c); とブロックを増やして1ブロックあたり1スレッドでも、 add<<<1,N>>>(dev_a, dev_b, dev_c); として、1ブロックNスレッドでも動く。 長さN:10

    【CUDA】グリッド,ブロック,スレッド - 緑茶思考ブログ
    endor
    endor 2018/07/30
  • 【CUDA】SM,Warp,Occupancyなどの概念 - 緑茶思考ブログ

    CUDAを勉強しようとして,まずつまずくのが, ThreadやBlock, Gridなどのソフトウェア上の概念と, Streaming Multiprocessor(SM),CUDA Core,Warp, Occupancyなどのハードウェアの概念がごっちゃになる点だ. 今回はじめて理解できた(気がする)ので,忘れないうちに書き残しておく. ソフト的(と思われる)概念 Thread デバイス上のプログラムが動くときの最小単位 非同期に動く Block Threadをまとめたもの 3次元表現 Grid Blockをまとめたもの ハード的(と思われる)概念 CUDA Core 実際にThreadが動く部分 CUDA Core以上にThreadを生成する利点は,GPUGPU側のDRAM間のメモリアクセスの遅延の隠蔽にある SM 上のBlockはハードではSMにあたる 1つのSMで実行されるBl

    【CUDA】SM,Warp,Occupancyなどの概念 - 緑茶思考ブログ
    endor
    endor 2018/07/30
  • GPGPU(GPUプログラミング概要)

    ホスト側とGPUボードは PCI バスを通してデータの交換を行います。 GPU内に転送速度は非常に速いが、メモリ・アクセスの遅延(レイテンシ)の大きな「デバイスメモリ」を有します。現在の実装では、数 GB オーダーの容量を有します。 デバイスメモリとGPUの演算装置(「Streaming Multiprocessor (SM)」と言う。あるいは単に Multiprocessor と言うこともある。)の間に、ソフトウェアで管理できるキャッシュ(Shared Memory)とハードウェアで制御できる L1/L2キャッシュ(Fermi以降)が存在する。 Streaming Multiprocessor (SM) は、演算器の集まり(クラスタ)であり、この演算器の最小単位は、Streaming Processor(SP)、あるいは CUDA coreと称される。一つの SM の中に 8個の SP

    endor
    endor 2018/07/30
  • CUDAにおける論理的と物理的概念 - yasulib memo

    CUDAにおいて論理的な概念と物理的な概念は(個人的に)複雑です。 簡単にですがメモしておこうと思います。 間違いがあればコメントの方に残して頂けると有難いです。 厳密なことはNVIDIAの公式のリファレンスマニュアル(英語/PDF)やドキュメントを読まれることをおすすめします。 NVIDIAへのリンクです。 なお、全て2010-02-28現在の状態です。これから更に拡張されていくと予想されます。気がつけばその都度書き換えていく予定ですが、気がつかないかもしれないです。 論理的概念 ある1つのプログラムを1つのグリッドとします。 グリッドは複数のブロックを持ち、ブロックは複数のスレッドを持つ階層構造になっています。 これはCUDAというよりGPUの仕様上、SP*1数より圧倒的に多いスレッドで計算することでGPUの高い性能を発揮できる(マルチスレッド)ため、膨大な数のスレッドを1つの数字で扱

    CUDAにおける論理的と物理的概念 - yasulib memo
    endor
    endor 2018/07/30
  • 1