PowerVR Series 6XT ブロックダイアグラム

新型PowerVR発表 ~モバイルGPUの王道~

  • このエントリーをはてなブックマークに追加

by [2014年1月17日]

2014 International CESで発表された各種デバイス・機器については様々なメディアが採り上げていますが、中には結構重要そうなのにほとんどどこからも採り上げられず、さっぱり話題にならないものもあります。

その一つに、Imagination TechnologiesのGPUである「PowerVR Series6XT」があります。

同社にとって恐らく最大の顧客であるAppleが、その製品名を示すことをあまり好まないためもあってかあまり知られていないようなのですが、このPowerVRシリーズは初代iPhoneから最新のiPhone 5sに至るまで、ずっとiPhone・iPadの内蔵GPUとして搭載されてきた、消費電力と描画性能のバランスに優れたGPUシリーズです。

そのPower VRを擁するImagination Technologiesが、まるで同じ2014 International CESでTegra K1を発表したNVIDIAにApple A7(PowerVR Series6搭載)のGPU性能を盛大にディスられたのを見ていたかのように、わざわざこのタイミングで現行PowerVRであるSeries6の改良上位機種であるSeries6XTを発表したからには、恐らく何らかの勝算があるのでしょう。

そこで今回は、この新しいPowerVRがどのようなものなのかについて考えてみたいと思います。

基本的な構成そのものは変わっていない

シリーズ名がSeries6XT、つまり開発コード名“Rogue”で知られたSeries6の派生機種であることを示すものとなっていることでも明らかなとおり、またImagination Technologies自身が公表しているブロックダイアグラムでも明らかなとおり、(書き方は若干変わっていますが)このSeries6XTの基本的なアーキテクチャそのものはSeries6と何ら変更はありません。

PowerVR Series6 GPUブロックダイアグラム
この種のユニファイドシェーダー搭載GPUとしてはごく一般的な構成となっている。

PowerVR Series6XT ブロックダイアグラム
中央のUnified Shading Cluster Arrayの記法こそ若干変わっているが、基本的な構成には変更はない。

つまり派手なアーキテクチャの改変ではなく、回路の細部についての様々な改良こそがこの新しいGPUのキモ、ということになります。

Series 6比で50パーセントの性能向上を実現

まず最初に明言しておかねばならないのは、このPowerVR Series 6XTは消費電力や発熱と性能のバランスが求められて開発された機種で、顧客となるメーカーの要望が先にあってそれを最優先で実現するように開発が進められている、ということです。

そのため、人目を引くような派手な性能向上はなかなか実現が難しいのですが、今回のSeries 6XTでは既存のSeries 6比でGPUのコアとなる演算ユニット(Unified Shading Cluster Array:USC)あたり業界標準のベンチマークテストで約50パーセントの性能向上が達成された(“Series6XT cores achieve up to a 50% performance increase on the latest industry standard benchmarks compared to equivalent configurations of previous generation cores.”)としています。

単純な話として、GPUの性能を上げたければメモリインターフェイスの性能を充分引き上げて可能な限りたくさんのシェーダーユニット群を詰め込んでやれば大体それで何とかなるわけですが、モバイル用統合プロセッサでは消費電力の制約が厳しくメモリインターフェイスの性能もあまり多くを期待できませんから、モバイルGPU設計にはそれ相応のノウハウが必要になってきます。

特に、Imagination Technologiesのように他社の開発している統合プロセッサなどに自社製GPUの設計をIPコア(Intellectual Property Core)という形で提供し、「買っていただいて」搭載して貰う立場のメーカーの場合、ローエンドからハイエンドまで、幅広く対応できるGPUコアの設計を開発・提供することが何より重要です。

PowerVR Series6系GPUのロードマップ
ローエンドからハイエンドまで1シリーズで対応していたSeries6に対し、次世代では若干構成を変えて上位機種となるSeries6XTと下位機種のSeries6XEが提供されることになる。

例えば極限まで低消費電力であることが求められる一部の組み込み用途向けなどでは、定められた電力の枠内でより一層性能を向上させることが要求されますからなおさらです。

それでは、Series6XTは前世代のSeries6と比較して具体的にどこをどう変えることでその性能向上を達成したのでしょうか?

具体的に何が変わったのか

ニュースリリースなどで示された、PowerVR Series6XTの改良点は以下の4つです。

・命令セットの合理化によるアプリケーションの実効性能とGPU効率の向上。
・次世代階層型スケジューリング技術(Hierarchical Scheduling Technology:HST)によるリソース利用効率の向上
・持続的なポリゴンスループットとピクセルのフィルレート改善による、より高い応答性および流体グラフィック性能
・より高度な並列演算性能実現のためのGPUコンピュート用データパスの最適化

最初の命令セットの合理化というのは、PowerVRが古くから使われていることに原因があります。

実はこのPowerVRシリーズ、元々はイギリスのVideoLogic(後にImagination Technologiesへ改名)によって1996年にパソコン用の3Dグラフィックプロセッサとして誕生し、1998年にセガ・ドリームキャストにSeries2が搭載されるなど、当初はパソコンやゲーム機の市場で展開してきた歴史があったりします。

「展開してきた」と過去形で書いたとおり、2001年頃には不振だったパソコン市場から撤退、その後はメモリ消費の少ないタイルベースのレンダリングアーキテクチャを採用していることから、消費電力の条件の厳しい携帯電話などの携帯機器に活路を見いだして現在に至っているのですが、その間、何度も改良を重ねてゆく過程で、使われなくなった古い機能や命令が盲腸のように取り残されてきたのです。

今回のSeries6XTではそうした古い使われなくなった命令を整理・淘汰して命令発行を行う回路の簡素化を行ったということで、つまりGPU内で命令解釈を行うデコーダ回路周りに手を入れたということですから、内部的に予想以上に大きな改変が行われていることが見て取れます。

2番目のHSTというのは、複数の処理を多重的に行う際にその各処理がプロセッサの演算資源をどのように使用するのかを階層的に管理・処理して実行させる技術で、これの効率を上げることでSeries6と同程度の回路構成・規模であっても、より効率的かつ高速に演算処理が実行できるようになるわけです。

3番目は正直何が何やら良く判らない人も多いと思いますが、要するに単位時間あたり処理できるポリゴンや画素の数を多くすることで、実効性能を引き上げた、ということになります。

これだけだと判りづらいのですが、ポリゴンや画素の処理がより高速になる=シェーダーの生の演算性能が高くなっている、ということですから、各演算ユニットを構成するシェーダーそのものの回路設計にも相応に手が入っている、ということでしょう。

4番目は、いわゆるGPGPU機能でGPUの演算能力をグラフィック描画以外に利用したい場合に、GPUに演算すべきデータを渡す際の効率が改善された、ということです。

これはどちらかと言えばソフトウェア的な部分の改良ということになりそうですが、当該機能を利用する場合に存在したオーバーヘッドが軽減された、と考えれば結構重要な改良です。

端的に言ってしまえば、これらは非常に地味な改良ばかりです。

しかし、こうした基本に忠実な改良を積み重ねることで、電力を無駄にせずに50パーセントもの性能向上が得られるというのですから、馬鹿にはできません。

手間をかけても回路設計のブラッシュアップが必要だ

このあたりの改良は、演算ユニットの論理設計全体の見直しが必要となってくるため、なかなか実施に踏み切れない(今正常に動いている論理回路は下手にいじりたくない)というのが実情です。

しかし、半導体製造プロセスのシュリンク(縮小)によるチップサイズの小型化や集積トランジスタ数の増加が難しくなってきている昨今の情勢では背に腹はかえられず、結果としてこうした地味でしかもやたら手間はかかる正攻法の改良策を講じる他なくなってきています。

実際、CPUコアの64ビット化にもかかわらず製造プロセスは前のまま、加えて前と大差ない容量のバッテリーでやりくりせねばならないiPhone用プロセッサのようなケースでは、同じ程度のパフォーマンスが得られて消費電力が低減できるのならば内蔵GPUをSeries6よりユニットあたりの性能/消費電力比が向上したSeries6XTに変更して演算ユニット数を減らすことで、「実効性能を維持したまま消費電力を低減する」という「改良」を行っても不思議ではありません。

Series6搭載機と同等の構成でSeries6XTでは50パーセントの性能向上が得られるなら、単純に考えて同じ演算性能が必要な場合、おおむね2/3のコア(USC)数で事足りる計算になります。

ちなみに、このSeries6XTはSeries6と同様に論理的には最大で8コアの集積が可能となっている由ですが、実際に発表された製品では最大6コア構成となっており、メーカー側の開発意図がGPUとしてのパフォーマンス向上よりもむしろ同程度のパフォーマンスをより少ない数のUSCで実現することに向いているのは明らかです。

Series6XTの消費電力が同等性能を実現する構成とした場合にそのままリニアにSeries6比で約33パーセント減になる保証は無いのですが、半導体製造プロセスのシュリンクが頭打ちの現状でわずか1パーセントの消費電力削減にも血道を上げている顧客各社にとっては、これだけでも積極的に新GPUへ移行する動機となるでしょう。

なお、消費電力削減については、使用していない回路ブロックを細かく停止して電力供給そのものを止めてしまう制御が行われているとされていますが、これそのものはモバイルプロセッサの定石と言える手法であり、高度に洗練されてはいるものの特筆するほどのものではありません。

メモリ帯域の負荷を軽減するデータ圧縮

PVRIC2
PowerVR Series6XTに搭載されたロスレス画像圧縮技術。2D描画も3D描画も共にデータ生成時に圧縮し、画像レイヤーの合成・出力の段階で展開していることが見て取れる。こうすることでボトルネックとなるメモリバスの負荷を大きく軽減する。

最近のデスクトップパソコン以上の機種向けのGPUではあまり意識されることはなくなってきているのですが、モバイル機向けGPUではポリゴンの表面に貼り付けられるテクスチャデータなどの圧縮が結構重要な意味を持っています。

今回のSeries6XTではこの部分にも改良が加えられており、テクスチャ圧縮のPVRTC、ロスレス画像圧縮であるPVRIC2、さらには3Dグラフィックのジオメトリ(座標系)構造データを圧縮するPVRGCと3種の圧縮技術が搭載されており、これをPVR3Cと総称しています。

中でもPVRIC2はグラフィック描画全般に効く汎用性の高い技術であるため、メモリ帯域の負荷軽減に役立ちます。

モバイルGPUの王道

今回のSeries6XT全般を通して言えるのは、地味で手間がやたらかかるけど非常に正攻法な、至って真っ当な設計の工夫で性能向上や消費電力の低減を得ている、ということです。

同時期発表のNVIDIA Tegra K1が派手なスペックを歌い上げる陰でひっそりとデビューしたこのGPUですが、その設計からは「モバイルGPUの王道はこうだ」というImagination Technology技術陣の暗黙の主張や自信がひしひしと伝わってきます。

このSeries6XTはこれまでの実績から次世代のiPhone・iPadに搭載されることがほぼ確定と考えられますが、これなら色々期待して良さそうです。

コメントは受け付けていません。

PageTopへ