ATI Stream SDK v1.3-beta公開、Brook+が大幅強化 10
ストーリー by soara
ちゃんと進んでいます 部門より
ちゃんと進んでいます 部門より
Anonymous Coward曰く、
OpenCL 1.0のリリース直後での公開ですが、 別にOpenCLを実装していたりするわけではないようです。
フォーラムの告知 やリリースノートに記載された主な変更点は以下の通り。
Catalyst 8.12は日本時間で12月11日未明 に公開される予定な上に、公開直後はサーバが混み合ってダウンロードしにくい可能性もあるなので、 FireStream向けのドライバで代用も可能らしいです。 一応8.12 RC3は既にリークされていて、 こちらでも大丈夫なようです(タレコミ子による確認)。
- CAL
- ランタイムdllをドライバ添付に(従ってCatalyst 8.12以降が必要)
- 64bitランタイムの名称変更
- DirectX 9との協調がVista限定であることを明記(SIGGRAPH 2008じゃ出来るって言ってたのに・・・)
- ATI Radeon HD 4350, 4550, 4650 ,4670, AMD FireStream 9270のサポート
- Brook+
- CUDAのDriverAPIに当たる新しいAPIを実装
- streamの動的割り当てと解放をサポート
- メモリマネージメントの最適化
- データ転送性能の改善
- streamのサイズ等に関する制限を緩和
- 倍精度のサポート
- その他いろいろ
Brook+はOpenCLに移行した後に見捨てるつもりだろうとばかり思っていましたが、 どうやらCUDA並のものに一通り仕上げるつもりでいるようですね。
そしてフォーラムをよく読むと"ATI Stream KernelAnalyzer"なる見慣れない名称が。 GPU ShaderAnalyzerの後継でしょうか。
Brook+独特のホスト側コードの記法は正直書きにくかったので、C++のクラスとテンプレートで実装された新しいAPIは大歓迎です。
Catalyst 8.12のダウンロードは12月14日現在スムーズでした。
早速つくってみました (スコア:4, 興味深い)
トリップ検索ツール「まあ、待て屋。」(Radeon対応) [osdn.jp]
CRYPT(3)ベースのIDシステムである"トリップ"を、全力で総当たりするツールです。
構造的にはJohn the RipperなどのDESクラッカーと似ています。
HD4850 で60Mキー/s, HD4870X2(tweakあり)で120Mを超えるレートをたたき出します。
このとき、GPUの廃熱はまるで熱風です。
参考までに、CPUだとQuad Coreで10M前後、PS3でも15M程度です。
(嫁には内緒でお願いします。通報しないでね。)
Re:早速つくってみました (スコア:1)
SDKのプレスリリースでは4x00シリーズのみ対応のようですが、うちの3870でも動くんですね。
これは何か特殊な処理をしているのでしょうか?それとも
「保証しないだけ。SDK標準で3シリーズでも動くよん」
と言うことなのでしょうか?
ちなみに、20M/sほど出ておりました。
#Catalystの負荷メータを見る限り、CPU演算しているわけではないようです。
Re:早速つくってみました (スコア:1)
SDKドキュメント中では、3870含み、R600系もそれなりにサポートされていると書いてあります。
Compute Kernel(Compute Shader)という、Pixel Shaderよりやや自由度が高いカーネルが、RV700系以降サポートなのですね。
だから両対応するのがメンドくせー場合、4xxx対応と謳ってしまうのが手っ取り早いのでしょう。
また、能力をアピールするためにはR600系が力不足のため、あえてRV700系のみをターゲットにしているとも考えられます。
件のヤツは、Compute Kernel, Pixel Shader ともに実装し、能力によってどちらを使うか切り替えてます。
情報希望 (スコア:0)
どこで、プログラムの為の情報をゲットしたのか教えて下さい。
あと、linuxで動かしてる猛者の情報希望
#ちなみに私はCUDAはやっていて、速度比較がしたいのさ。
Re:情報希望 (スコア:2, 参考になる)
プロトタイピングはBrook+-1.2.1で行い、またILスケルトンとして利用しましたが
1.3になって改良されたとしてももはや食指が伸びません。
私のばあい、むしろStream Processor ISA(ネイティブ命令)を狙うべきか…と考えてます。
ATI Streamの資料は、こと日本語に関してはほとんど見られないのが現状です。
たしかにCUDAの方が手っ取り早い。
私は、イマイチ役に立たないサンプルを懸命に眺めたりいじったりShader Analyzerに喰わせたり、
AMD Forumをいっしょうけんめい眺めてどうにかキャッチアップできました。
フォーラムの方では、研究目的かLinux使いが多いようです。
4870X2を4台、2KW電源を用意してwktkして待ってる! って猛者もいます!
Brook+はともかく、ILの方はシミュレータがないため、実機が必要ですね。
オススメは4850あたり。安くてそれなりだと、4830もしくは4670あたりがよいです。
4870X2は、GPGPU的に地雷です。マジ。
あ、ATIのカードがなくてもSDKはインストールできます。
私はx64のクロス開発ホストとして、ATIのカードがないXP Homeでやってます。
Re: (スコア:0)
情報ありがとうございます。
私は研究目的でCUDAを利用しています。研究的に速度が欲しいのでAMDと比較してみたく思ってました。
CAL IL (英語可)の文献ってどこから持ってきましたか?
機械は高い物でもないので研究費で購入しようと思っています。
ただ、無駄金は使えないので、できればなぜ地雷か教えて頂けると嬉しいです。
なんか「教えて君」で申し訳ないです。でも情報が少くて。。。
HD4870X2の地雷っぷり (スコア:2, 参考になる)
CAL APIリファレンスとILリファレンス(ついでにR600 ISAリファレンスも)が利用可能です。
先に申し上げましたが、WindowsであればRadeonが入っていなくてもインストールなどは可能です。
また、Brook+とかILを机上でいじってヒマつぶすのであれば、ツール Stream KernelAnalyzer をインストールするとよいです。
Linuxの事情は存じ上げません。 4870X2をGPGPU利用しようとした場合の問題点を以下に挙げます。
- Windows XPではカード複数台の際の動作に難があるらしいです。昨晩、4870X2のホストに4850を単純に挿してみましたが、4850の方をCALから利用できませんでした。今晩、CrossFire接続にて試してみます。
- VistaではCrossFire接続の際に片側のデバイスしか認識しないようです。4870X2はセルフCrossFireみたいなものなのでそれを禁止することができず、結果としてVistaでは4870X2の片肺しか使うことができません。
- 4870X2のBIOSによる省電力制御の特性上、CrossFireが有効っぽい場面でないとクロックを最大に引き上げてくれません。単にCALアプリを起動しただけでは、コアクロックが最低の507MHz固定です。私は軽めのD3Dフルスクリーンアプリを表で起動することで対策していますが、これだとキャラクタコンソールが見られないので使い勝手に難あり。
- SDK1.3の時点でも、4870X2 は Not officially supported らしいです。
- とにかく、熱いぞ! 電気代は懸念されるところ。
Linuxだと多少事情が違うとおもうので、AMD Forumを読みあさったり、SDKのRelease Notesを読んだりしてみてください。パフォーマンス評価ということであれば、4870を2台程度がよろしいのではないかと思います。
ゲームなどと違い一定以上の負荷を連続してかけることが容易だったりするため、冷却に定評があるものを選ぶのがベターでしょう。
# 小遣いで買うとさすがに4870X2は高いものだった…
Re: (スコア:0)
GPGPU自体を研究するならともかく、GPGPUを使って研究するのには時期尚早といった印象を受けました。
もう少し情報を集めてトライしてみたいと思います。
本当にありがとうございました。
Mac版はないの? (スコア:0)
該当するグラボのったMacあるの?(T/O) (スコア:0)