狠狠撸

狠狠撸Share a Scribd company logo
GPUを使ってみよう
skill Wednesday
? 今回はGPUを使用するための環境構築に関しては
言及していません
? MBAとかでnVIDIA、AMDのGPUついていない方
はAWSのGPUインスタンス使うと良いと思います
(そこそこ高いけど)
そもそも骋笔鲍って何ぞや
Graphics Processing Unit
Graphics Processing Unit(グラフィックス プロセッシング ユニット、略し
てGPU)とは、パーソナルコンピュータやワークステーション等の画像処理
を担当する主要な部品のひとつ。
Visual Processing Unit(ビジュアル プロセッシング ユニット、VPU)とい
う名称もある。
コンピュータシステムにおいて画像表示を担当するASICであるグラフィック
コントローラから発展したもので、GPUはジオメトリエンジンなどの専用ハー
ドウェアによって画像データ処理を行う集積回路をさす。現在の高機能GPU
は高速のVRAMと接続され、グラフィックスシェーディングに特化した演算
器を複数搭載するマイクロプロセッサとなっている。
Wikipedia
???
骋笔鲍を使ってみよう(やさしい编)
なんで骋笔鲍で计算するの?
圧倒的コア数の差 = 並列可能度合いの違い
何故GPUで計算を行うのか 1
Caffe: Convolutional Architecture for Fast Feature Embedding
GPUを利用した画像の特徴検出器
3次元直接数値シミュレーションにおける
レイノルズ数のめやす
株式会社CRADLE 流体解析の基礎講座
実際に使うにはどうすればいいの
(どんな言語使うの)
CUDA
C++
Python
FORTRAN
AMD Stream
Brook+
ハードウェア非依存では
?OpenCL
?OpenMP
?OpenACC
?C++ AMP
ここで実际に研究で使っているコードを。。。
やってること
0
B
B
B
@
b11 b12 . . . b110000
b21 b22 . . . b210000
...
...
...
...
b100001 b100002 . . . b1000010000
1
C
C
C
A
0
B
B
B
@
a11 a12 . . . a110000
a21 a22 . . . a210000
...
...
...
...
a100001 a100002 . . . a1000010000
1
C
C
C
A
(1)
+
を100回繰り返す
https://gist.github.com/doridoridoriand/660150508e1593283292
https://gist.github.com/doridoridoriand/b30bd4?986726911a09
https://gist.github.com/doridoridoriand/f68e2c3788bc73765b87
計算速度の比較
正方行列の和の演算(倍精度)
計算にかかった時間/s
0
20
40
60
80
使用した演算装置
TeslaK20 X5680 Multi X5680 Single
73.41
15.00
0.09
並列化の問題点
Fn+2 = Fn + Fn+1(n 0)
前の結果に依存するものは並列化不能
ex.フィボナッチ数列
今後の課題1
計算すべき格子空間
GPU1
GPU2
境界部分の値の交換が必要
ex. 熱伝導方程式
今後の課題2
計算すべき格子空間
GPU1
GPU2
GPU間の並列化 : ?
GPU間のメモリ共有の最小化 : ?
ex. 熱伝導方程式
GPU1
GPU2
今後の課題3
計算すべき格子空間
GPU間の並列化 : ?
GPU間のメモリ共有の最小化 : ?
ex. 熱伝導方程式
骋笔鲍を使ってみよう(やさしい编)

More Related Content

骋笔鲍を使ってみよう(やさしい编)