「GPU」(グラフィック処理装置)は、画像を描写するための演算処理をするプロセッサだ。GPUは、データセンターのサーバにも、PCにも組み込まれることがある。GPUの当初の利用目的は、画像やアニメーション、映像のレンダリング(描画)だったが、より幅広い用途に使われるようになった。(続きはページの末尾にあります)
グラフィックスを処理するために生まれた「GPU」は、いまやAI関連を含めて汎用(はんよう)的に使われるようになった。GPUを選ぶ際は、どのような要素を考慮して判断すればいいのか。
DRAMのメモリモジュール規格「DIMM」に代わる「CAMM」が採用され始めている。CAMMはDIMMとは何が違うのか。メモリモジュール進化の変遷を踏まえて解説する。
CPU、GPU、TPU、NPUはいずれもAI技術の活用において使われるプロセッサだ。それぞれAI技術の演算処理とどのような関係にあり、どのような用途で使われるのか。
「CPU」ではなく「GPU」を使った方がよい用途とは何か。用途に合ったGPUを選ぶためのポイントとは。NVIDIAとAMDの主要製品の違いなど、GPU選定を成功させるための勘所を整理する。
GPUの主要ベンダーであるNVIDIAとAMD。GPU市場で主流になっている両社の製品にはどのような違いがあるのか。企業が検討すべきポイントは。
CPUに加えてGPUを併用する動きがある。GPUはグラフィックス処理用ではなく、CPUのタスクを肩代わりする役割として活用が進む。2つをどう使い分けるのが賢い選択なのか。
GPUベンダーとしての確固たる地位を築いてきたNVIDIAが、AI技術分野での存在感を高めている。同社がAI処理などを担うサーバ向けの新たなアクセラレータとして提供するのが「DPU」だ。
NVIDIAとAMDは、共にGPU分野に重点的に投資している。両社のビデオカードは、演算能力などの性能や機能においてどのような違いがあるのか。
主要なGPUベンダーが提供している「GPU仮想化」技術。IntelやNVIDIA、AMDなど、ベンダーごとのGPU仮想化技術の特徴と、「vSphere」環境で仮想GPUを利用する方法を説明する。
スーパーコンピュータ用のプロセッサの主流はIntelとAMDだが、これにArmが食い込もうとしている。存在感を高める中国企業の出方次第で、この市場の形勢は一気に変わる可能性がある。
グラフィックスを処理するために開発されたGPUだが、活躍の場はもはやゲーム業界だけではない。本稿ではGPUの能力が仮想化やデータセンターといった分野での利用に適している理由と、使用する際の注意点を解説する。
複雑なグラフィック処理が必要な仮想デスクトップユーザーに役立つ「GPU仮想化」。ベンダー間の競争激化を背景に、その導入のハードルが急速に下がりつつある。
CPU(中央演算処理装置)と同様、GPUも演算処理のための部品だ。CPUとGPUの重要な違いの一つは、GPUが画像の描写を高速で実行し、PCやスマートフォンなどの端末に画像や動画をスムーズに表示するために設計されていることだ。
GPUを搭載した電子機器は、3D(3次元)グラフィックスやビデオコンテンツを高速でレンダリングできるため、ゲームや3Dモデリングソフトウェアでの利用に適している。GPUの技術的な進化によって、今ではより多様な用途に使用できるようになっている。GPUは現在、クリエイティブなコンテンツ制作やビデオ編集、ハイパフォーマンスコンピューティング(HPC)、人工知能(AI)技術などのアプリケーションでデータ処理をするために使用されている。
コンピュータの黎明(れいめい)期は、CPUが2D(2次元)や3Dの画像、アニメーション、ビデオのレンダリングなど、画像の処理に必要な計算を実行していた。しかし画像処理を多用するアプリケーションが開発されたことで、その要求は次第にCPUに負担を掛け、コンピュータ全体のデータ処理速度を低下させるようになった。
GPUは、画像処理のタスクをCPUの代わりに引き受ける方法として開発された。GPUは、画像処理に関連する並列計算を高速に実行する。GPUが画像処理を実行するため、CPUはコンピュータの稼働に必要な他のタスクを処理できる。
GPUは搭載する複数のコア(演算処理を担う部品)が単一タスクの別々の部分を同時に処理する、並列処理と呼ばれる方法で動作する。GPUは、処理中のデータを保存するためのRAM(ランダムアクセスメモリ)を搭載している。このRAMは、GPUに入力される大量の情報を保持するために設計されている。
画像処理を必要とするPCアプリケーションの場合、CPUが画面に画像を描画するための命令をGPUに送る。GPUは並列処理で高速にその命令を実行し、画像をPC画面に表示する。
GPUはビデオゲームの処理に広く使用されている。低遅延かつ高画質なレンダリングを可能にしている。最近のGPUは初期のGPUよりもプログラムがしやすくなっていることもあり、幅広いタスクに利用できるようになっている。その代表的な例は、AIアプリケーションの高速化や機械学習だ。
GPUの一般的な用途には、以下のようなものがある。
近年、GPUはビットコインやイーサリアムなど暗号資産(仮想通貨)の採掘(マイニング)にも使われている。GPUはマイニングに必要な高速の並列計算を実行できる。CPUしか搭載していないノートPCでは、この作業を実行することは難しい。
一般的にGPUには2つのタイプがある。
内蔵GPUはコンピュータのマザーボードに組み込まれている。CPUと同一のマザーボードに載せることもできる。GPUとCPUを組み合わせることで、GPUを組み込むためのスペースが少なくて済むため、小型化と軽量化が可能になる。
内蔵GPUはシステムの消費電力やデバイスのコストも削減できる。しかしGPU内蔵のノートPCはアップグレードできない場合があるため、エンドユーザーのニーズが変わると、新しいデバイスに投資しなければならなくなる可能性がある。
GPUを内蔵したPCはゲーミングPCとして販売されている。ゲーミングPCは、ゲームのグラフィックスを遅延なく描画し、ゲーマーのプレイ体験を向上させる。
ディスクリート(専用)GPUは、サーバやPCなどの筐体(きょうたい)の内部で、CPUとは別の独立した回路基板に搭載されたGPUのことだ。取り外し可能なグラフィックカードの形でハードウェアに組み込まれる。
内蔵GPUと比較して、ディスクリートGPUはデータの処理速度が高い傾向にある。そのため3Dゲームなど、リソースを大量に消費する高性能なアプリケーションにディスクリートGPUは適している。ユーザーのニーズの変化に応じて、PCを買い替えなくても、GPUのみのアップグレードができるという利点もある。しかし内蔵GPUよりも多くの電力を消費する。内蔵GPUと比較して発熱が大きい傾向にあるため、十分なデータ処理能力を維持するためには、専用の冷却装置が必要になる。
クラウドGPUは、GPUを物理的に用意して利用する方法に代わる選択肢として台頭しつつある。クラウドGPUは、クラウドベンダーが提供する仮想GPU(vGPU)サービスを指す。Amazon Web Services(GPU)やGoogleといったさまざまなクラウドベンダーがクラウドGPUを提供している。クラウドGPUを利用することで、GPUの利用に必要なハードウェアやソフトウェアをオンプレミスインフラに導入する必要がなくなる。
大規模な計算能力を必要とする企業や、機械学習、3Dビジュアライゼーションを扱う必要がある企業に、クラウドGPUは適している。
クラウドGPUを利用することで、オンプレミスインフラのリソースを解放し、導入にかかる時間とコストを節約し、スケーラビリティを向上させられる。ユーザー企業は、ニーズに合わせてさまざまなクラウドGPUのタイプを選択できる。
エンドユーザーは3DレンダリングやAIモデルの学習、ゲーム、医療画像、金融リスク管理、生成AI(ジェネレーティブAI)、HPC、BI(ビジネスインテリジェンス)などのアプリケーションを実行するために、WebブラウザからオンデマンドでクラウドGPUを利用できる。
GPUはPCやサーバのマザーボードなど、CPUと同じ回路基板に組み込まれている場合がある。GPUとCPUの構造は似ている。しかしCPUはコンピュータを駆動するための基本的な命令に応答して処理するために使用されるのに対し、GPUは高解像度の画像や動画を素早くレンダリングするために設計されている。
CPUはコンピュータの基本的なコマンドを処理する役割を担う。GPUはより複雑な数学的・幾何学的計算を実行し、画像のレンダリングや集中的な計算を必要とするアプリケーションに使われる。
CPUとGPUは、コアと呼ばれる処理装置の数とトランジスタの数が異なる。各コアはそれぞれのタスク(スレッド)を処理する。CPUは1つのプロセッサにつき数個から数十個ほどのコアで、タスクを順次実行する。これに対してGPUは、数百個から数千個のコアを持ち、並列処理と高速なデータの出力を可能にする。
シングルコアのCPUは通常、並列処理の機能を持たない。マルチコアは、複数のコアを同じチップに搭載することで並列計算ができる。
クロック周波数(動作の速さ)ではCPUはGPUよりも速い傾向にあり、個々の計算を素早く実行できる。そのためCPUは基本的な計算タスクを処理するのに適している。
GPUとグラフィックボード(ビデオカード)は、同じ意味で使われることがある用語だ。主な違いは、GPUがグラフィックボードを構成する要素であることだ。グラフィックボードは、ディスプレイに画像を表示させるために必要な処理を担う部品を指し、GPUに加えてメモリや出力端子などで構成される。