この記事は GPGPU Advent Calender の7日目の記事です。
始まる直前になっても参加者が少なくGPGPU Advent Calendarを立ち上げた山田てるみがあまりに不憫なのと、w_oに頼まれたら断れないというのもあって、参加をする事に。
一番の目的は、山田に恩を売っておくことだ。
(あと、山田がブログ書くのに時間取られすぎて、いろんなところに影響が出るのを防ぐため)
今回はGPUを使うときのホストとなるPCの選び方について少しだけ。
既に知っているとは思うけどおさらい。
それぞれのGPUのインターフェイスについて。
GTX 580シリーズ:PCI Express Gen 2 x 16
GTX 680シリーズ:PCI Express Gen 3 x 16
ちなみに理論性能はPCI Express Gen 2 x 16で双方向16.0GB/sec、単方向8.0GB/sec,
PCI Express Gen 3 x 16なら双方向32.0GB/sec、単方向16.0GB/secとなる。
(Teslaシリーズは自分で調べてね)
別にGTX 580がPCI Express Gen 2 x 8で動かないわけではないし、GTX 680もPCI Express Gen 2でも動作する。
なので性能を出し切れなくてもいいなら、物理的に装着できることと、電源の容量を気にすればいいだろう。
ただし、ホストPCとGPUの間のデータ転送の速度はPCI Expressの性能によって制限されて本来の性能は発揮出来ない。
GPGPUをやっているとデータ転送に時間が掛かって、結局それほど速くならなかったとか、GPUで計算しているよりデータ転送の時間の方が長くなることなどはよくあるので、できるだけ速いインターフェース上で利用したいものである。
そこで、GPGPUを行う時にPCを購入する場合には、ちゃんとGTX 580ならGen2 x 16、GTX 680を利用するならGen 3 x 16のインターフェイスを備えていることを確認しよう。
とくにGTX 680等のKepler世代のGPUを使うときにはGen 3 x 16をサポートしているか注意が必要だろう。
GPUを2枚装着したい場合には、PCI Express x 16のスロットが2つ同時に利用可能かを購入前に確認しておかないと、後で後悔する事になるだろう。
探せばPCI Express Gen 3 x 16を2スロット以上備えたPC(ワークステーション)も存在する。(ステマっぽくなるので具体的には挙げない)
ただしそれなりの値段になるだろうから、購入前にはGPU2枚装着可能かを問い合わせすることが望ましい。
自作する場合はちゃんと勉強して自己責任で。
もちろん、物理的にハイエンドのGPUが搭載できるかの確認も忘れずに。
PCI Express x16のスロットはあるのに、ケースと干渉して刺さらなくて泣くとかはよくある。
あ、あとPC自体の電源容量もね。これは不足すると警告音が鳴ってOSの起動までいかなかったりして心臓に悪い。
(それほど調べずに書いているので、間違いや訂正があればお知らせ下さい)