本日のお題は先日の『AMDの「APU新製品」に関するブロガー勉強会、なるイベントにてほっこりして来た件。』続き。
「個々の細かい話は別段」と書いた部分の、別段です、はい。
◇
・第二部、AMDの省電力への取り組みについて。
まずは既にお馴染みTurboCoreの件について。省電力というよりはいかに発熱を設計ギリギリに抑えるか、という気もしなくもないのだけど。
で、前半は一言で言うとTrinityではGPUも含めてトータルでバランスを取っていますよ、という話。
まあこれは至極理に叶った話なワケでして。
特にノートPCなんかの場合は少ない電力枠と放熱能力枠を奪い合っているので、枠をギリギリまで使いたい。それに、GPGPUとして活用していくならGPUも所詮は演算コア、CPUコアと一緒の枠の中でせめぎ合っていかないと、計算能力のバランスがおかしなことになってトータルパフォーマンスが残念なことにもなりかねない。
正直な話、個人的にはGPUをCPUの中に入れてしまう以上、トータルでバランスを取るなんて出来て当たり前という気もするが。実際にはそうでもなかったと。
この辺りはLlanoで経験値を既に積んでいるAMDのアドバンテージですな。
次に後半は、Switchable Graphicsのお話。nvidiaだとOPTIMUSとか言っているアレ。
一言で言うと、最新v5.0では内蔵GPUを使っている時には外付GPUを完全に電源OFFに出来ます、というお話。
さらっと流されたけどこれ結構画期的な話だと思うんですよ。
バスも含めてWake up必要最低限の回路以外は全てOFFにしてしまうことで、外付側がホントに「存在しないかのように」電池が持つ。
バッテリという制約のあるモバイルだけでなく、エコが叫ばれるこの時代、デスクトップでも売りに出来る筈。
何しろ、Intel・AMD・nvdiaという業界3社の中で、唯一、統合GPU・チップセット・単品GPUの「3点セット」を持っているのがAMD。
この3点セットを持つ強みを活かせる技術の一つだと思うんですよコレ。
nvidiaと違って他社CPUや他社チップセットとの相性なんて考えなくていいし、その気になれば専用回路だってチップセットやAPUの中に仕込める。
・・・とまぁこんな風に思っているとこで、AMD担当者よる実物デモ。
MXM typeIIIに載ったGPUをノートPC相当の開発プラットフォームに挿すとそれだけで最大消費電力が20W近く上がるが、Switchable GraphicsのドライバがロードされるとGPUのファンも停止して、すとんと消費電力が下がって挿してない時と同じに値に、というもの。
エコワットの簡易計測とはいえ、通電時20WのGPUに通電したままファンを止めたら火を噴くのは目に見えているので、正に「無かったこと」になっているということですな。
#つかノート用GPUって結構電気喰うよね。
とまぁこんな風に現物を目にするとやっぱり魅力的な機能なのだが、その後の質疑応答で残念な事実が発覚。
「(Switchable Graphics v5.0を)デスクトップマザーボードで有効にしているベンダさんは無いです」
・・・え゛ー。
兎に角、折角の技術が目の前にあるのに何か惜しいなぁ、と思うこと仕切りでしたとさ。
◇
・第三部、GPGPUとヘテロジニアスコンピューティングの話。
ここからは一気にアーキテクチャの話に。
まずAMDは過去からGPGPUについては色々やっていますよ、そして今はOpenCLに全力投球ですよ、というお話。BROOK+なんてまあ余程のAMDマニアでないと聞いたことすらないかも知れないが、公式なのでちゃんとこの辺りも触れてますな。
あと、AMDからはOpenGL・OpenCLの実装や最適化に便利な、というか事実上必須のツールが公開されている、という話も。
#BROOK+の実装のための研究の成果はきちっとOpenCLにも活かされてるんだけどねぇ。
ちなに今回のお話、AMDの担当の方が話をしたのは言わば「AMD公式としての話」なので、この話に時代背景や当時のIntelとnvidiaの動きを重ねていくとこれまた面白い、という内容でした、はい。
詳細を書くと長くなるので各自調べて貰うとして、Larrabeeとか、CUDAとか、キーワードは色々ありますよ。
とまぁ、この辺りの一通りの概念の話もまあ「まとめ」的な感覚で悪くなかったが。
もっと興味深くて面白かったのが、このお話をしてくれたAMDの担当の方と、実装レベルまでレイヤを落とした話をした時。
OpenCLで実際にコードを書いて動かした際、パフォーマンスを発揮するにはいかにCPUとGPUで最適なロードバランスになるようにするかがキーで、ヘタクソな実装だとGPU側のパイプラインがスカスカになってしまってパフォーマンスが出ないとのこと。とはいえハードウェア能力によってこのバランスなんていくらでもブレるワケで、それを実装するとなると・・・まぁ要するにこの辺りが腕の見せ所、と。
そして、Trinityやそれ以降のAPUでのGPGPU最適化は、従来の単品GPUをベースにしたGPGPUとは全く別のアプローチになっていくとのこと。
キーは「メモリ帯域」と「ダイレクトアクセス」で、単品GPUと比べて圧倒的に「メモリ帯域」は狭い代わりに、GPUとCPUがハードウェア的に共通のメモリを使うことでGPUからCPU上のデータへの「ダイレクトアクセス」が出来る。単品GPUのように「CPUメモリからGPUメモリへ処理前データを入力し、処理後データを再びCPUメモリへ引き抜く」というオペレーションが不要になるので、その分より多くの時間をデータ処理に割くことが出来る、という理屈。
・・・なんというか、AMDもいよいよ本気なんだな、というか。
ヘテロジニアスコンピューティング、これから面白いことになりそうですよ。
今までx86とかARMとか命令セットだけで語られてきたアーキテクチャという概念も、もしかしたらひっくり返るかも。
#OpenCLは自前でプログラム書いたことないんだよなぁ。
最適化のテクとか、色々面白そうなんだけど、時間が・・・。
◇
最後に以下、ちょっと雑談。
今回も感じたのだが、国内でのAMDのプレゼンスを落としている(いた)最大の元凶は、ちらほらと醸し出される「最後の一歩が詰め切れない」感だという気がするんですよ。
例えばBulldozerのLlanoも、国内ではもともとそこまで爆発的ヒットになるとは予想されていなかったにも関わらず圧倒的な品薄で一番の「売れ時」を逃し、結果としてSandy Bridgeの売上増加に大いにに貢献してしまった。
もう、今のAMDに出し惜しみなんてやっている余裕は無い筈。
でも、今回「勉強会」に参加して話を聞いた限りだと、実はまだ繰り出せるネタはあちこちに転がっているように見える。
例えば、Switchable Graphicsをデスクトップに展開してみる。
マザボ屋さんとBIOS屋さんと協力して、FM2世代の「プラットフォームの基本機能として」Switchable Graphics v5.0を展開する。勿論、AMD側で適当な統一ロゴを用意して、マザボ屋さんにはそれを使ってもらう。ユーザ混乱を避けるため、デフォルト設定ではどのマザボでも本体側のVGAポートを画面出力に使うよう設定を統一して貰う、なんてことも必要と思われる。
あとは、既にタスクトレイに常駐しているVision Engine Control Centerにちょっと機能を追加して、クリック一発で内蔵と外部を切り替えられるようにしておけばOK。勿論、プロファイルを使った自動切替は必須だけど、お好みで一発切替出来るようにもしておかないと。
こうすると「使ってない時は完全にOFFです」ので「FM2プラットフォームなら必要な時だけGPUがONになる、省エネとエコに配慮したシステムが組めます」という売り文句が一つ作れる。「普段は省電力で静か、ゲームが来たら本気出します」というマシンが簡単に構築出来る。
この売り文句の為にAMDが準備しなくてはならない新規リソースはそんなに無い筈。モバイルでは既に動いているものなのだし、各種ソフトとの互換性チェックなんかもモバイル向けで既にやっているものをちょっと拡張すればそれで済むだろうし。
以上、素人考えだが、例えばこんな感じで、一つでも多くの要素を積み上げてプラットフォームとしての魅力を最大限引き上げていくこと、それがAMDには大切だと思うんですよ、自分はね。
もちろん、こんなことはAMDの中の人も分かっている筈だし、取り敢えず直近の「新APU」については「国内流通分は頑張ってがっつり確保しました」と営業担当の方も言っていたので、前回と同じ轍は踏まない筈。
これからのAMDの「反撃」に期待してます、いやほんとに。