笠原一輝のユビキタス情報局

タブレット/スマートフォン向けクアッドコアSoCの性能と課題
〜NVIDIA Tegra3の性能をチェック



Tegra3を搭載したASUSのEeePad TF201

 NVIDIAのTegra3を搭載したASUSTeKの「EeePad TF201」が発売されてから約1カ月が経過した。筆者も、前世代のTF101の時からキーボード付きのタブレットが欲しかったということもあり、発売日に早速入手して、ビジネスやプライベートに利用している。

 さて、TF201の大きな目玉は、Androidタブレットとしては、現時点では最強の処理能力を誇るNVIDIAのTegra3を搭載していることだ。Tegra3は、ARM Cortex-A9のクアッドコア(4コア)を内蔵し、従来のTegra2から倍に増えているほか、GPUのエンジンも8から12に増えており、3D演算能力も強化されるなど、Tegra2に比べて大きく性能が上がっている。

 本レポートでは、TF201に搭載されているTegra3が、前世代のTegra2に比べてどこが強化されており、それが使い勝手にどのような影響を与えているのかを紹介していきたい。


●2コアから4コアになったのに、平均消費電力はむしろ下がっているTegra3

 NVIDIAのTegra3は、NVIDIAが昨年(2011年)の末に発表した新しいモバイル機器向けのARMプロセッサだ。大きな注目を集めたTegra2の後継となる製品で、2つの製品には以下のような違いがある。

【表1】Tegra2とTegra3の比較
製品名
Tegra3 Tegra2
CPU コア ARM Cortex A9 ARM Cortex A9
ISA ARMv7 ARMv7
コア数 4 2
周波数 最大1.4GHz(1コア時)/最大1.3GHz(4コア時) 最大1.2GHz
L1キャッシュ(命令/データ)/コア 64KB(32KB/32KB) 64KB(32KB/32KB)
L2キャッシュ 1MB 1MB
メモリ サポートメモリ DDR3L-1500/LPDDR2-1066 DDR2-760/LPDDR2-733
最大メモリ 2GB 1GB
GPU アーキテクチャ ULP GeForce ULP GeForce
コア 12 8
3Dステレオ 対応 -
OpenGL ES 2.0 2.0
OpenVG 1.1 1.1
EGL 1.4 1.4
ディスプレイ サポート数 2 2
HDMI最大解像度(ドット) 1,920×1,080 1,920×1,080
LCD最大解像度(ドット) 2,048×1,536 1,680×1,050
CRT最大解像度(ドット) 1,920×1,200 1,600×1,200
パッケージ 14×14mm BGA 12×12mm PoP
24.5×24.5mm BGA 23×23mm BGA
製造プロセスルール 40nm(TSMC) 40nm(TSMC)

 大きな違いは、プロセッサコアが従来のTegra2ではデュアルコア(2コア)だったものが、倍のクアッドコア(4コア)になっていること、そしてGPUの演算器の数がTegra2では8個だったものが、Tegra3では12個になっていることだ。

 一般論で話をするのであれば、こうした演算器を増やせば、当然実装しなければならないトランジスタ数を増やす必要がある。トランジスタは半導体の最小単位で、トランジスタがスイッチとして動作することで半導体は演算したりデータを記録したりということが可能になっている。しかし、スイッチが増えればそれだけ利用する電気の量(電力量)は増えることになる。つまり、プロセッサ全体での消費電力が増えてしまうのだ。

 そこで、半導体業界では、製造技術(プロセスルールと呼ばれる)を進化させることで、1つのプロセッサが実装できるトランジスタ数を増やしても、消費電力を増やさない取り組みを行なっている。いわゆる32nmや45nmなどの数字で表されるものがそれだが、それ自体はトランジスタの大きさ(厳密に言えばゲートと呼ばれる部分の長さ)を示している。1つ1のトランジスタのサイズを小さくする(微細化する)ことで、1つあたりが消費する電力を抑え、半導体全体の消費電力を抑えることが可能になる。だから、45nmよりも微細化された32nmの製造技術を利用すれば、より多くのトランジスタを1つのチップに実装しながら、消費電力を前の世代より低く抑えたり、悪くても同じ程度に抑えることができるのだ。

 さて、この“常識”を理解してもらった上で、Tegra2とTegra3の話に戻ろう。表を見てわかるように、Tegra2とTegra3は、同じ40nmという製造技術を利用して製造されている。つまり、製造技術の“助け”は受けていないわけだ。このため、上記の“常識”に当てはめれば、コアや演算器の増加はトランジスタ数の増加により、消費電力も増加することになる。

 そこで、NVIDIAが何をしたのかと言えば、Tegra3には、性能が低いものの消費電力はものすごく低いコア(NVIDIAでは“Ninjaコア”や“Battery Saverコア”などと呼んでいる)を搭載し、それとメインのコアを動的に切り換えることで、低負荷時の消費電力を抑える仕組みを導入しているのだ(詳しくは以前の記事を参照)。これにより、いわゆる平均消費電力と呼ばれるプロセッサがバッテリで動作している時に消費している電力の平均を、従来製品と同じレベル(NVIDIAによればむしろ低くなっている)に抑えることに成功しているのだ。

 このため、Tegra3はTegra2に比べてプロセッサコア数とGPUの性能を引き上げながらも、従来製品と同じ平均消費電力を維持ないしはむしろ下がっている、これがTegra3の魅力と言える。

●Tegra3の実力は対応アプリケーションで効果を確認

 さて、そのTegra3を搭載したTF201だが、TF201の詳細については別途レビュー記事が掲載されているのでそちらを参照してもらうこととして、Tegra3の性能を実機を通じて調査し、Tegra2との違いを調べていきたい。

 なお、比較対象として用意したのは、Tegra2を搭載したLG Electronicsの「Optimus Pad(L-06C)」、プロセッサにSamsung Electronics S5PC110を搭載したSamsungの「Nexus S」で、いずれも筆者の手元にあったAndroidタブレットおよびスマートフォンだ。Optimus PadはTegra2を搭載したタブレットとして、Nexus Sはシングルコアのスマートフォンとの違いを見るために追加してみた。スペックはそれぞれ以下の通りで、結果はグラフ1/グラフ2の通りだ。

【表2】ベンチマークテストに利用した機材
メーカー ASUSTeK Computer LG Electronics Samsung Electronics
製品名 EeePad TF201 Optimus Pad Nexus S
プロセッサ NVIDIA TEGRA3 NVIDIA TEGRA2 Samsung S5PC110
プロセッサコア Cortex-A9 Cortex-A9 Cortex-A8
コア数 4 2 1
メモリ 1GB 1GB 512MB
ストレージ 64GB 32GB 16GB
OS Android 3.2 Android 3.1 Android 4.0

【グラフ1】Quadrant Professional 2.0

 Android OSを搭載したデバイスのベンチマークプログラムとして一般的に利用されているQuadrantの最新版がQuadrant Professional 2.0だ。なお、Quadrant Professional 2.0は、従来のQuadrant 1.x系とは結果に互換性が無いものの、新しいバージョンになってマルチコアのサポート、Android 4.0のサポートなどが追加されている。

 結論から言えば、Quadrant Professional 2.0のCPUテストで見る限り、Tegra2とTegra3の違いは期待していたほどは大きくないと言えるだろう。パーセンテージで言えば18%の性能向上でしかない。これだけみると、期待を下回る結果としか言いようがないのではないだろうか。コアが2コアから4コアに増えているのだから、倍とまで行かなくても、もう少し向上しても良いのではというのが正直な感想ではないだろうか。

 これが何を意味しているのかは、グラフ2の結果を見ればある程度の類推が可能だ。というのも、グラフ2の結果では、クアッドコアの効果が明らかにわかるからだ。

【グラフ2】Photafを利用したパノラマ作成の時間
Photaf THDの画面。ガイドに従って撮影した写真を元に解析してパノラマ写真をレンダリングして作成する。マルチスレッドに最適化された処理が可能

 OREN BENGIGIのPhotafはスマートフォンやタブレットで撮影した画像をつなぎ合わせてパノラマ画像を作成するAndroidアプリケーションだ。ガイドに従って撮影し撮影終了後、プロセッサを利用して演算してパノラマ映像を合成する。Photafにはスマートフォン用の通常版とTegra系のプロセッサを搭載した用のTHD版が用意されており、THD版はTegra3のクアッドコアにも最適なようにアプリケーションが書かれているという特徴を持っている。つまり、アプリケーションそのものがマルチスレッドに対応しており、写真の合成をマルチスレッドで行なうことができるようになっている。

 結果は12枚の画像から1枚のパノラマ画像を作成するのにかかった時間で、時間が短ければ短いほど性能が良いことを示している。見てわかるように、コア数に応じて性能がリニアに上がっていることがわかる。Tegra2を搭載したOptimus Padが36秒弱であるのに、Tegra3は17秒強と半分以下の時間で処理できていることがわかる。シングルコアのS5PC110では138秒もかかっており、それと比較すれば、いかに高速に処理することができているかがわかるだろう。

 もっとも、ここには、プロセッサコアの数だけでなく、プロセッサの周波数やコアの内部構造、メモリの帯域やレイテンシ、さらにはストレージへのアクセス速度も含まれている。このため、純粋にコア数による比較はできない。しかし、Tegra2とTegra3はいずれも同じCortex-A9コアで、キャッシュサイズなども同じ、違いはクロック周波数とコア数ぐらいになる。従って、しっかりとアプリケーションをマルチスレッドに最適化すれば、こうした性能がきちんとでるということが結果からわかるのではないだろうか。

 つまり、Quadrantの結果から見る限り、最適化が進んでいないアプリケーションでは、本来の性能を発揮できていないが若干の向上がみられる、しかしマルチスレッドに最適化が進んでいるアプリケーションを使えば、Tegra3の本来持つ性能を活かすことができているということが言えるだろう。

●Tegra2から大きく進化したポイントはビデオ再生環境

 筆者にとってTegra3で最も期待していたのは動画再生環境が改善されることだった。というのも、おそらく筆者も含めてTegra2を搭載したタブレットを購入したユーザーが最も不満に感じている点がここだからだ。

 以前の記事でも触れたとおり、Tegra2はMPEG-4 AVC 1080pのハードウェアデコードが可能になっているのだが、実際にできるのはMPEG-4 AVC 1080pの動画でも、Baseline Profileと呼ばれる最もベーシックでかつ、実際にはほとんど利用されていないプロファイルにまでしか対応しておらず、日本では多くのユーザーが利用しているHigh Profileの再生には対応していないという制限があった。実際には再生できないというわけではなく、内蔵されているハードウェアデコーダを利用してデコードできるのだが、コマ落ちが発生していた。つまり、内蔵されているハードウェアデコーダの性能が十分ではなかったのだ。

 これに対して、TIのOMAP4やSamsungのS5PC110などPowerVR SGX 540系のGPUを搭載したタブレットでは、これがきちんとできていた。実際、以前の記事でもS5PC110を搭載したSamsungのGalaxy Tab(初代、NTTドコモ SC-01C)では、Tegra2を搭載したOptimus Padでは再生できなかったMPEG-4 AVC 1080p High Profileの動画が再生できたということをお伝えした。つまり、この点は明確にTegra2の弱点だったと言っていいだろう。ではTegra3でこの点がどうなったのかと言えば、以下の通りだ。

【表3】ビデオ再生の可否

EeePad TF201
(Tegra3)
Optimus Pad
(Tegra2)
Nexus S
(S5PC110)
MPEG-4 AVC
1,920×1,080ドット HP@8Mbps
再生可(HW) コマ落ち(HW) コマ落ち(SW)
MPEG-4 AVC
1,920×1,080ドット MP@8Mbps
再生可(HW) コマ落ち(HW) コマ落ち(SW)
MPEG-4 AVC
1,920×1,080ドット BP@8Mbps
再生可(HW) ややコマ落ち(HW) コマ落ち(SW)
WMV 1080p@5Mbps 再生可(HW) コマ落ち(SW) コマ落ち(SW)
WMV 480p@4Mbps 再生可(HW) 再生可(SW) 再生可(SW)
MPEG-2 TS
1,440×1,080ドット
再生可(SW) コマ落ち(SW) コマ落ち(SW)

 再生プレーヤーには「MX動画プレイヤー」を利用した。なぜこれを利用したのかと言えば、再生時にメッセージでハードウェアデコーダを利用して再生しているのか、ソフトウェアデコーダ、つまりCPUを利用して再生しているのかが情報として表示されるからだ(それに加えてアスペクト比が変更できることも個人的には気に入っている)。なお、一応、比較対象としてNexus Sを掲載したが、Nexus SのGPUはPowerVR SGX 530と一世代前のGPUで、ビデオ再生性能は現行のPowerVR SGX 540を搭載した製品に比べると低いので、あくまで参考情報としてだけ載せておきたい。今回はPowerVR SGX 540を搭載した製品が手元になかったので、比較対象としては掲載していないが、先述の通り、搭載したGalaxy Tabはいずれの動画も再生できていたことは付け加えておく。

 一目瞭然のように、いずれもTegra2では再生できなかったか、ややコマ落ちしていたMPEG-4 AVC 1080pの各プロファイル(HP=High Profile、MP=Main Profile、BP=Baseline Profile)のいずれでもTegra3では再生が可能になっている。なお、今回はテストしていないが、MPEG-4 AVC 1080p High Profileの再生ではビットレートは40Mbpsにまでスペック上は対応しており、一般的な用途であれば十分すぎると言っていいだろう。

 また、PCのユーザーがよく使う、WMVに関しては、Tegra2ではハードウェアデコードが効かなかったため、SD解像度のソフトウェア再生のみが可能だったのだが、Tegra3では1080pのフルHD動画の再生が可能になっていた。

 このように、動画の再生環境に関しては、Tegra3は明らかに改善されており、すでにPCにMPEG-4 AVCにエンコード済みの動画を沢山持っているユーザーも、Tegra3のタブレットであれば、そのまま内部ストレージにコピーするか、UPnPの再生プレイヤーなどを利用することでネットワーク越しに再生することが可能になる。この点は、使い勝手の改善という意味で、大きな強化点と言っていいのではないだろうか。

●現状ではTegra3の持つ潜在能力を引き出すにはソフトウェアの最適化が必要な状況

 このように、Tegra3は、明確に処理能力の点ではTegra2を上回っており、きちんとアプリケーション側がマルチコアを意識した作り方をすれば、Photafの結果からもわかるように、大きな性能向上を期待できる。さらに、Tegra2の弱点だった動画再生も、きちんとMPEG-4 AVCのHigh Profileに対応し、WMV HDのハードウェアデコードに対応するなど、PCユーザーが利用する場合でも不満がないように性能が上がっているのは大きな進化と言えるだろう(当たり前のことができるようになっただけとも言えるが……)。

 もちろん、Quadrantの性能があまり上がっていないことからもわかるように、Tegra3の持つ本来の処理能力を引き出すには、アプリケーション側もそれを考慮する必要はあるとは言えるだろう。NVIDIAもこうしたことはきちんと認識しており、有力なアプリケーションベンダーに働きかけを行なっており、実際に対応しているソフトウェアの開発は進みつつある。

 NVIDIAがInternational CESの記者会見(別記事参照)でデモしたNik SoftwareのSnapseedという写真編集ソフトウェアはその例の1つで、Androidタブレットでも、写真の補正などがリアルタイムで行なえるようになる。

 また、CESではソフトウェアベンダーのCyberlinkがOEM/ODMメーカー向けに開発したPowerDirector Mobile for AndroidをTegra3に最適化したことを明らかにし、実際に同社のスイートで報道関係者や顧客に対してデモしていた。

 こうしたことからもわかるように、今後対応するアプリケーションソフトウェアが増えていけば、Tegra3のクアッドコアをもっともっと活用することが可能になるだろう。

CESでのNik Software Snapseedのデモ。タッチ操作で写真のレタッチなどが可能になる。Tegra3の処理能力を利用してリアルタイムでレンダリングできる CyberlinkがCESでデモしたPowerDirector Mobile for Android。Tegra3に最適化されており、クアッドコアを効率よく利用してエンコードがタブレット上で可能に。Cyberlinkによれば、現時点ではマーケットなどで販売する予定はなく、OEM/ODMメーカー向けになるという

●ハードウェアとソフトウェアは競い合うように進化していく

 こうした状況がTegra3の置かれている現状ということになるが、ここまで読んできて“タブレットやスマートフォンでそんな高速なプロセッサが必要なの?”という質問を持っている読者も少なくないだろう。PCでもよく出てくる質問で、何年かに1度は必ず蒸し返される議論だ。この疑問に答えて本稿のまとめとしたい。

 そういうことを問われたときに筆者は「では古い世代のプロセッサ、例えば20年前にリリースされたPentiumプロセッサとかに戻って、今のソフトウェアを使いたいですか?」と逆に質問することにしている。つまり、“高速なプロセッサが必要か?”という疑問は、今あるソフトウェアが進化しないという前提の話であって、ソフトウェアはそれこそ日々進化しているという視点を忘れていると思うからだ。

 ソフトウェアはハードウェアの新しい機能や処理能力をめいっぱい使うように進化していっている。ソフトウェア開発者という人達は、そこに魅力的なハードウェアがあれば、それをめいっぱい使ってみようと思う人種だからだ。従って、新しいソフトウェアが出てきたときには、より処理能力が高いプロセッサが必要になり、新しい処理能力が高いプロセッサが登場すれば、それを利用するソフトウェアが登場する……このスパイラルの繰り返しが、PCの30年間の進化の歴史と言える。

 タブレットやスマートフォンの進化もまさに今それと同じ道を辿ろうとしている。明日(もちろん象徴的な意味で)には、Tegra3やほかのマルチコアプロセッサが持つ高い処理能力を利用するソフトウェアが登場するだろう。実際、まだまだタブレットやスマートフォンには出来ないことが多い。代表的な例は写真編集や動画編集などだが、それらも今後はタブレットやスマートフォンの機能として取り込まれていくだろう。また、今我々が想像していないようなアプリケーションが今後も登場していくことを誰が否定できるというのだろうか。

 SnapseedやPowerDirector Mobileはそうした例の1つと言えるし、そうしたソフトウェアにはTegra3のような処理能力が高いプロセッサが必要になる。そう考えていけば、“タブレットやスマートフォンでそんな高速なプロセッサが必要なの?”は、愚問であることが理解していただけるのではないだろうか。

 もちろん、ユーザーとしては“今日”こそが大事だという考え方があることは筆者も否定しない。多くのメインストリームユーザーは、今日こそが大事であり、明日よりは今日という考え方のユーザーの方が多いのは事実だ。そうしたユーザーはシングルコアやデュアルコアといったメインストリーム向け製品を購入すればいいし、そのうちに多くのユーザーが使うソフトウェアもマルチスレッド化されたようなタイミングでクアッド(4コア)やオクタ(8コア)といった製品を購入すればいいだろう。

 このあたりはユーザーの選択の問題だろう。本誌を熱心に読んでくれるようなハイエンドユーザーの読者にとって、明日を見据えて、ないしは明日が来たときにはすぐ新しいアプリケーションを使ってみたいと思っているユーザーであればTegra3のような最新のプロセッサを搭載したデバイスを購入する価値はあるし、そうではないユーザーにとってはもう少しリーズナブルな選択をすればいいだけの話だ。

 このあたりは、これまでのPCのプロセッサ選択と少しも変わっていないと思う。そういう意味では、タブレットやスマートフォン向けプロセッサのビジネスモデルも、PCのそれに近づきつつあると言えるのではないだろうか。

バックナンバー

(2012年 2月 27日)

[Text by 笠原 一輝]