GPUはCPUに並ぶ大規模なパーツで、日本での流通はほぼIntel, nVIDIA, AMDの3社に限定されます。
GPUはGraphics Processing Unitの略で画像表示に関連する処理を担うパーツです。
近年、GPUは主に3D Graphics(立体視ではなく、演算により立体的な造形を画面表示する機能)の性能強化を中心とした進化を続けてきましたが、結果として、膨大な浮動小数点演算性能を持つに至り、これが大量の演算処理を必要とする用途でCPUに任せるよりも高速かつ効率良く処理が行える可能性が高いために画像表示以外での利用も模索され、立ち位置が若干CPUに近付いてきています。
一方、CPUの進化が他の機能の取り込み・統合へと向っているため、CPUの立ち位置に近付いたGPUの取り込み・統合が進められ、2011年のノートPCとしては特別にdGPU (Discrete GPU = 別付けのGPU)を搭載する製品以外は全てCPUに統合されています。これはほんの3~4年の間に実現されました。
GPUは消費電力の点でCPUと並ぶ大喰なパーツです。ノートPCでは電力の制約が厳しいため「並ぶ」程度で済んでいますが、デスクトップPCではCPUにも大差を付けるほど電力を消費する製品も流通しています。一方で普通の画面表示においてもGPUを積極的に使用して行こうとする動向であることから、GPUの良し悪しもCPUと同様に注目する必要があります。
GPUの処理性能は主にスループットで語られてきました。GPUは元々画像表示のための演算機能であるため、画像の表示間隔の中でいかに大量の演算をこなせるかが処理性能の良し悪しを決定付けていたのです。画面表示のリフレッシュレートは標準で60Hz、立体視表示などを行っても240Hzなどですから、1.6ms(ミリ秒)あるいは0.4msの時間内で大量の演算が出来れば良いのです。これが結果を直ぐに出さなければならないCPUと大きく性質が異なるところです。
具体的にはGPUではレイテンシを重視しません。電力効率の点で高速に駆動することよりもコアを増やす方が有利です。メモリとのやり取りについても単純に速度を追求するより帯域を重視します。大量の演算を行うことが主体であるため、演算のデータをキャッシュすることに意味がありません。従って、CPUとは性能強化の方向が異なり、主に以下の手法で処理性能を伸ばします。
CPUに統合されたGPUの場合、メモリはCPUと共用になるため、帯域を安易に広げることは出来ず、CPUと同様に64bitか128bitアクセスに制限されます。
GPUは比較的単調な演算処理を行うパーツであるため、CPUほど工夫のしどころはありません。ですがやはりCPUと同様に仕事をすればするほど電力を消費するものです。
省電力性能を伸ばす主な手法は以下のようになります。
省電力性能についてはCPU統合型GPUの方が完全に勝っている状態で、dGPU搭載機ではバッテリー駆動時間が半減してしまうため両方を搭載して切り替えできるようにしているノートPCも多く存在します。
CPU統合型GPUはCPUに含まれます。
dGPUについてはTDPが公表されていないケースを多く、また、ノートPCメーカー側の方である程度スペックをコントロールできてしまうためハッキリしません。ただし、昨今のCPU統合型GPUの性能が飛躍的に向上している中で、それでもあえてdGPUを搭載するものはそれなりの高性能&高発熱であると思われます。
GPUでも性能の差別化は良く行われます。その差別化要因は主に以下のようになっています。
注意したいのが同一グレードであってもコアクロックやメモリクロックが同一で動作しているとは限らないため性能も同じとは限らないという点です。この点がGPUの選択を非常に難しいものにしています。ざっくり言ってしまうとベンチマークの結果だよりになってしまいます。
また、上記とは別にグラフィックスワークステーション向けのdGPUも存在します。これはいわゆるビジネス向けのdGPUでOpenGLへの対応やCADやレンダリングソフトなど特定のアプリケーションの動作保証などを手厚くしているものです。ハード性能としては特に通常のdGPUと差があるわけではなく、むしろ中級以下のdGPUが搭載されることが多いものです。ですが、特定の処理をきっちりGPUがブーストしてくれることを保証してくれるので特定のソフトと組み合わせて使用する場合はこういったdGPUを選択するのが無難です。AMDでは「FireGL」、nVIDIAでは「Quadro」という名称が付けられます。
GPUの世界ではモノとしては全く変わっていないのに製品名が付け替えられる「リネーム」と呼ばれる手法が当然かのように使用されます。これは製品の世代交代がされる際に一斉に切り替えられない、もしくは、バリエーション展開を厚くしたいために意図的に旧世代製品を残したいが旧世代という印象を消し去りたいがために最新世代であるかのような型番を与えるものです。酷いときには全ての製品が何も変わっていないのに新世代を装ってリネームされることすらあります。
これがただでさえ分かりづらいGPUの製品展開をさらに分かり辛くしていて、型番的に上位に見える製品が実は旧世代製品で性能だけは型番通りに出るが、消費電力や特定機能への対応などで激しく見劣りするなんてことも良くあります。
最近ではGPU単体としての過当競争が様々理由により沈静化せざるを得ない状況になってきているため、今後はこのようなリネームは減少してくるものと思われますが……。
dGPUはGPU専用のメモリを持っているため、性能制限がされにくく、高性能なGPUはまだまだdGPUの独壇場です。ただし、それ相応の消費電力や発熱の覚悟は必要になります。また、それに引き摺られて筐体やACアダプターが巨大化するのもノートPCとしてはデメリットになります。
一方、CPU統合型GPUではメモリを共用するため、CPUからのメモリアクセスとGPUからのメモリアクセスとでメモリ帯域を奪い合う形になり、性能向上はdGPUよりも難しくなります。dGPUと同等のコアを持ち同等のクロックで動作したとしても性能でdGPUに劣ることになります。メモリ容量の点でもGPUに使用される分、アプリケーションの動作に使用できる容量は目減りします。一方、CPUとGPUが同じダイに含まれているため、CPUとGPU間に生じる大量のデータのやり取りがdGPUよりも効率良く行うことができるようになります。電力効率ならCPU統合型GPUが優れます。
dGPUとCPU統合型GPUは一長一短であるため、状況に応じて適した方に切り替えれば良いんじゃないかといった思想で、GPU切り替え機能を搭載したノートPCも存在します。機構としては面白いのですが、熱源を両方持つために廃熱設計が大変になり、ノートPCとしては重量や大きさの点で不利になりがちです。勿論、価格的にも不利になります。
dGPUとCPU統合型GPUを両方搭載するなら両方同時に動作したら一番オイシそうな感じもしますし、実際両方同時動作可能なノートPCも存在します。こちらも機構としては大変面白いものですが、両方のGPUの調停のために電力や性能が食われてしまうため、思ったほど性能が伸びない割りに消費電力や発熱が大きく、コストの問題を除外すれば高性能なdGPUを単体で動作させた方が良いというレベルを脱していないのが残念なところです。
2011年時点の結論としては、CPU統合型GPUの性能でも間に合うのであればdGPUを選択する意味は無いということになります。一方、CPU統合型GPUでは性能が不足するという場合は思い切って高性能なdGPUを選択した方が良いでしょう。dGPUの中にはCPU統合型GPUと性能的に大差ないものも流通していますので、最悪dGPUにしたのに性能不足、かつ、バッテリー駆動時間激減なんていう結果になりかねません。
GPU切り替え型や両方駆動型の製品はその製品のデメリット(大きさ・重さ)が納得の行く範疇で済むものであれば選択しても良いでしょう。
CPU統合型GPUが主体となってきているため、GPUの進化の方向はCPUとの連携を除外できません。当面は如何にしてCPUの邪魔をせずにCPUを援助し、総合性能の向上に寄与するかが焦点なると思われます。そのためにコア設計も変化してくると思われ、従来のGPUとしての性能は以前ほど伸びなくなるかも知れません。しかし、それは停滞を意味するものではありません。PC全体の進化のために少しずつ形を変えながら進化してゆくことでしょう。
----- 【性能】 目次 -----