イベント
[COMPUTEX]西川善司の3DGE:AMD,ノートPC向けAPU「Carrizo」をFXおよびA-Seriesとして正式発表。型番は8000番台に
なお,Carrizoは,5月の時点で7000番台の製品ラインナップが公開され,すでに出荷中とアナウンスされていたのだが(関連記事),今回の8000番台の発表をもって「正式発表」になるとされている。
28nmプロセスのまま,トランジスタ数が3割増しになったCarrizo
パッケージはすべて「FP4」で,統合されるCPUコア数はもいずれ4基。GPUの「Compute Unit」(演算ユニット)数は最上位モデルとなるFX-8800Pのみが8基で,A-Seriesの2モデルは6基となる。シェーダコア数としては順に512基,384基となる計算だ。
Carrizoは,サウスブリッジ機能や,ARMによるハードウェアレベルのセキュリティ技術「TrustZone」に対応したCortex-A5を,セキュリティプロセッサとして統合したSoC(System-on-a-Chip)になっているのも大きな特徴だ。
消費電力低減への取り組みは主にGPU部分に対して行われたとされる。高めの電圧はGPUだけに供給することとし,GPU内のリーク電流を低減させる工夫を組み入れることで,熱設計容量15WのノートPC製品において,熱設計容量35WのKaveri搭載ノートPC製品を大幅に上回るグラフィックス性能を実現できたという。
さて,Carrizoで,Kaveriから大きく変わった点は何かというと,それは3点に絞ることができる。具体的には,「H.265(HEVC)デコーダ」の搭載と,「CPUコアの強化」「HSA 1.0対応となったGPU周り」だ。これらについては,次の段落以降で解説したい。
なお,冒頭でも紹介したとおり,つい先日,Kaveri Refresh(もしくはGodavari)こと「A10-7870K with Radeon R7 Graphics」(以下,A10-7870K)がリリースされているが,2015年のAPUラインナップは,デスクトップPC向けがKaveri Refresh(もしくはGodavari),ノートPC向けがCarrizoになるとのことだ。A10-7870KがどんなAPUかは,レビュー記事をチェックしてもらえればと思う。
Carrizoの変革ポイント(1)クラス初のHEVCデコーダを搭載
Carrizoコアが持つ目玉機能の1つめが,エントリークラスのノートPC向けプロセッサとしては世界初となる,HEVCデコーダの搭載だ。正確には,統合されるビデオデコードエンジン「UVD」(Unified Video Decoder)の第6世代となる「UVD6」で,これらのデコードをサポートする。
HEVC(High Effeciency Video Coding)は最新のMPEG系ビデオコーデックで,「H.265」とも呼ばれるものだ。開発コンセプトとして,Blu-rayなどに採用されているH.264と同程度の画質の映像を,H.264の半分のデータ量で表現できることを目標に開発され,次世代映像規格である4K(3840×2160ピクセル)放送/ストリーミングや8K(7680×4320ピクセル)放送/ストリーミング,4K Blu-rayである「ULTRA HD BLU-RAY」での採用が決まっている。そんなH.265に対応したデコーダをCarrizoでは標準搭載したというわけだ。
ちなみに,エンコーダのほうはH.264対応までで,H.265には対応していない。つまりVCE(Video Codec Engine)側には大きな変更はないわけだが,これは,H.265エンコード処理は演算量も相当多くなり,回路規模が大きくなるためとAMD。H.265デコード処理はデコードパイプライン的に大幅な変更が少なく,H.264デコーダをリファインするだけで対応ができるとのことだった。そのため,回路規模を大きく変更することなく,スムーズに搭載できたというわけである。
そして,CarrizoのUVD6は,省電力性にも優れているというのがAMDの主張だ。省電力性を実現するための改良は多岐にわたるが,改良の1つに,デコードパイプラインが挙げられている。
Kaveri世代では,デコード処理をUVDで行ったあと,ビデオデータをグラフィックスメモリに書き戻して,GPUコア側でスケーリング処理などのポストプロセスを行い,再びグラフィックスメモリに書き戻して,その後やっとディスプレイ出力という流れだった。これに対しCarrizoでは,ディスプレイ出力エンジン部がポストプロセスまで担当するようになったため,メモリの読み書き一往復分の無駄がなくなったそうだ。
Carrizoでは,UVD6が,H.265だけでなく,4K解像度のH.264デコードにも対応しており,AMDはこれが省電力性能に貢献していると説明している。
Carrizoでは,フルHD解像度のH.264をデコードしたとき,Kaveri比4分の1の時間でデコードが終了するため,1フレーム表示期間の4分の3の時間でUVD6への給電をカットし,さらにグラフィックスメモリを省電力モードへ移行できるというのだ。これにより,同じフルHD・H.264ベースのビデオなら,Kaveriと比べて2倍の時間,バッテリー駆動で楽しめるという。
Carrizoの変革ポイント(2)CPUアーキテクチャが一新
Carrizoでは,「Bulldozer」マイクロアーキテクチャ世代の最新モデルとな第4世代コア「Excavator」(エクスカヴェータ)を採用している。Kaveriでは第3世代の「Steamroller」だったから,完全に一世代新しくなったことになる。
さらに,分岐予測メカニズムにおける,予測分岐先アドレスをキャッシュしておくBranch Target Buffer(BTB)もSteamrollerの512エントリに対する1.5倍増量の768エントリとなり,分岐命令実行効率も向上した。
こういった改良の相乗効果で,クロックあたりの命令実行数(IPC:Instruction Per Clock)はSteamrollerに対して4〜15%向上したとされている。
また,IntelのHaswellコアから搭載された256bit SIMD命令のセットである「AVX2」にも対応。Coreプロセッサと同等のマルチメディア処理系アクセラレーションが期待できるようになったことも,地味ながら大きなポイントといえよう。
性能面と直接関わる話ではないが,今回の「28nmプロセスのまま30%のトランジスタ増量」には,Excavatorの物理デザインに対する工夫が大きく貢献したとされる。
Kaveriでは,CPUコアを28nm High Performance Libraryの配線セルを採用して実装していたが,Carrizoではこれに変わり,高密度型のHigh Density Libraryを採用して実装している。
高密度タイプは主にGPUで使われるタイプであり,配線密度が上がる関係で動作クロックを上げられないというデメリットもあるとのことだが,今回は,コストと性能のバランスを追求するため,この選択を決断したのだという。
この物理設計の採用によって,浮動小数点演算スケジューラが38%,積和算器(FMAC)ユニット部が35%,命令キャッシュ制御ユニットが35%縮小され,CPU全体では23%の縮小化が図れたとしている。
Carrizoの変革ポイント(3)GPUアーキテクチャはTongaベースに
CarrizoのGPUコアは,第8-3世代――8世代目の第3リビジョンめという意味――で,「GCN 1.2」を採用する。Southern Islandsシリーズが第8-1世代でGCN 1.0対応,Sea Islandsシリーズが第8-2世代でGCN 1.1対応となり,そして「Radeon R9 285」が属するVolcanic Islands系が第8-3世代でGCN 1.2対応ということになる。
昨年,事前情報として開示されたとおり,「Tonga」コアベースというわけだ。
昨年の時点では「ほのめかす」という形で予告された「GPU Graphics Preemption」と「GPU Compute Context Switch」は,今回のCarrizo正式発表に伴って正式にその機能の搭載が告知された。
GPU Graphics PreemptionとGPU Compute Context Switchは,GPUが自発的に実行中のタスクを中断して(Preemption),現在の処理中のタスク状態を退避保存し別タスクの実行に切り換える(Context Switch)という意味だ。CPUではごく普通に昔から行われてきたことだが,これがGPUに実装されることは大きな変革だとされる。ぜひTongaコア解説記事を参照してほしい。
さて,GPUがTongaコアベースとなったことで,レンダーバックエンド側には「Lossless Delta Color Compression」機能が搭載されることとなった。これはレンダリング結果の描き込みおよびテクスチャユニット経由の読み出しにおいて,ピクセルの色情報に対し差分量子化圧縮展開を行う仕組みだ。搭載の目的はメモリバス帯域消費の削減で,メモリバス幅がそれほど広くないAPUでは効果が大きいと見込まれている。
そして,これも昨年予告されたとおりだが,Carrizoは「HSA 1.0」(HSA:Heterogenous System Architecture)にフル対応することが公式に発表された。
HSAはGPGPUの効率を高めるための仕組みで,CPUとGPUで同じメモリ空間を共有する技術「hUMA」(heterogeneous Uniform Memory Access)を実現するためのアーキテクチャ規格である。HSAの提案者はAMDだが,HSAの規格制定はHSA Foundationで行われており,ARM,Imagination,Qualcomm,TIなど,名だたるプロセッサメーカーが参画している(※IntelとNVIDIAは不参加)。
「CPUとGPUがメモリ空間を共有する」とはいっても,それぞれのプログラムが固定の物理メモリアドレスを取り扱うわけではない。プログラムが物理メモリアドレスを直接取り扱ってしまうとプログラムやデータは固定のアドレスに読み込まれなければならなくなり,セキュリティ面でも不都合が出てくる。近代のコンピュータシステムにおけるプログラム実行モデルでは,プログラム自体はそれ自体だけのメモリ空間(=仮想アドレス)を扱っているつもりで動作し,実際の実行段階でMMU(メモリ管理ユニット)が仮想メモリアドレスを物理メモリアドレスに変換する「Adress Translation」の仕組みを導入している。
そしてCarrizoでは,このAdress Translation処理のための専用キャッシュシステムを搭載したのである。
「Adress Translation Cache」(ATC)と名付けられたこのキャッシュシステムはL1,L2の二段構造で,L1キャッシュは各Compute Unitごとに配置される。各Compute UnitにATC L1キャッシュを持たせ,GPUコア全体でATC L2キャッシュを持たせた理由は,異なるGPUタスク(=カーネル)が同一の物理アドレスを参照するケースにおいても,ちゃんとキャッシングできるようにするためだ。つまり,異なるコンテクストのGPUタスク(=カーネル)を実行するための仕組みであるGPU Graphics PreemptionやGPU Compute Context Switchとも関連の深い機能強化というわけである。
魅力あるHSAアプリケーションの登場がCarrizo成功の鍵を握る
今回の説明会では,H.265動画の再生品質を同価格帯の競合製品と比較するデモや,HSAを活用して,「大量のビデオライブラリから,顔を検出してどの顔がとのビデオファイルのどこに出現しているかをインデックス化する」アプリケーションのデモが行われた。
Kaveriからの機能強化点は多いが,一般ユーザー目線に立つと,基本的には「CPU性能の強化」「GPU性能の強化」「ビデオ再生性能の強化」「電力性能の向上」といった,年次更新という印象しかないかもしれない。
ただし,HSA関連の機能強化であるGPU Graphics PreemptionやGPU Compute Context Switchへの対応,そしてAdress Translation Cacheの搭載は,コンピューティングパラダイムを大きく変革させる可能性を秘めている。GPUコンピューティング業界からの期待は大きい。
それだけに今後は,アプリケーションベンダーに,HSAの優位製を活かした魅力的なアプリケーションを送り出してもらうことに力を注いでいかなくてはならないフェーズに突入したのではないかと思う。
競合NVIDIAがGPUコンピューティングにおいてCUDAによる成功を収めたのも,地道な「そうした努力」の賜によるものであった。
APUは,HSA 1.0仕様のフルサポートとなった今回のCarrizoで,紛れもなく,APUのひとまずの完成を見たといえる。しかし,いうなれば,本格的なGPUコンピューティングに向けてのスタート地点に立ったということもできるわけで,GPUコンピューティングの世界における巻き返しは,これからのAMDが,ソフトウェアベンダーに対し,HSAを効果的に活用していってもらえるよう,どれだけ強く訴求をしていけるかどうかに掛かっているといえるだろう。
COMPUTEX TAIPEI 2015取材記事一覧
- 関連タイトル:
AMD A-Series(Carrizo)
- この記事のURL: