用語集

グラフィックス処理ユニット(GPU)

このウェブページは、お客様の便宜のために機械翻訳されたものです。翻訳されたコンテンツの正確性や信頼性は保証いたしかねます。翻訳されたコンテンツの正確性について疑問をお持ちの場合は、ウェブページの公式な英語版をご覧ください。

GPUとは何ですか?

グラフィックス処理単位(GPU)は、多くの計算を並列に実行するように設計された特殊なプロセッサーであり、元々は画像、ビデオ、 3Dグラフィックスのレンダリングするを目的としていました。現在では、GPUは機械学習、科学シミュレーション、ビデオエンコーディングなど、その他の高度に並列化されたワークロードも高速化している。

ゲームやリアルタイム3Dアプリケーションでは、GPUがシーンデータを処理してプレイヤーが見るピクセルを生成し、1秒間に数十回画像をレンダリングします。

GPUはどのように動作するのですか?

GPUはそのスピードを並列処理によって実現している。少数の強力なCPUコアに頼ってタスクを順次処理するのではなく、GPUは大規模なワークロードを並列処理可能な多数の小さな処理に分割する。

GPUはCPUと連携して動作し、CPUはゲームロジックなどのタスクを処理し、グラフィックスやその他の並列処理のためにGPUに命令を送信します。2つのプロセッサの比較については、以下を参照してください。 CPU 対GPU.

GPUは、いくつかのキーコンポーネントとソフトウェアレイヤーに依存しています。

  • コア数:多数の演算を並列に実行する処理装置。それらのアーキテクチャと名称はGPUメーカーによって異なり、例えばNVIDIA製GPUではCUDAコア、AMD製GPUではストリームプロセッサと呼ばれている。
  • ビデオメモリ(VRAM) :テクスチャ、メッシュ、フレームデータ、その他のリソースをGPUの近くに保存する、専用の高帯域幅メモリ。統合型GPUは通常、システムメモリを共有。
  • シェーダー:GPU上で実行され、頂点の位置決め、ピクセル色の計算、およびコンピュートシェーダーによって処理されるものを含む汎用ワークロードの処理などのタスクを実行するプログラム。
  • ドライバーとグラフィックス API :アプリケーションがGPUと通信できるようにするソフトウェア層。DirectX、Vulkan、 Metal、OpenGLなどのAPIは、グラフィックスコマンドを発行するためのインターフェースを提供し、ドライバはそれらのコマンドを特定のGPUハードウェア向けに変換する。

GPUがフレームをレンダリングすると、何が起こるのでしょうか?

単一フレームのレンダリングはグラフィックスパイプラインに従って行われ、これは3Dシーンデータを2D画像に変換する一連の段階です。

  1. 提出する:CPUは、使用するメッシュ、マテリアル、レンダリング設定を指定する描画呼び出しを送信します。
  2. 頂点を処理する:頂点シェーダーは、各メッシュの頂点を3Dシーンスペースから画像のレンダリングに使用される位置にTransform。
  3. ラスタライズ:GPUは、生成された三角形を、画面上の潜在的なピクセルに対応するフラグメントに変換します。
  4. シェーディングピクセル:フラグメントシェーダーは、テクスチャ、照明、マテリアルなどの情報を使用して、各フラグメントの色を計算します。
  5. 出力:生成された画像はフレームバッファに書き込まれ、ディスプレイに表示されます。

GPUにはどのような種類がありますか?

GPUは、その配置場所、メモリへのアクセス方法、およびコンピューティングリソースの提供方法に基づいて、大きく3つのタイプに分類できます。

生息地
統合型GPU
CPUと同じチップまたはパッケージ上
ディスクリートGPU
独自のグラフィックスカードまたはモジュール
仮想(クラウド)GPU
クラウドプロバイダーのデータセンターで、リモートアクセス
メモリ
統合型GPU
システムRAMを共有
ディスクリートGPU
専用VRAM
仮想(クラウド)GPU
ホストハードウェアに割り当てられたGPUメモリ
電力と熱
統合型GPU
一般的に低い
ディスクリートGPU
一般的に高いため、専用の冷却装置が必要になる場合があります
仮想(クラウド)GPU
プロバイダーによって管理されます
代表的なデバイス
統合型GPU
ノートパソコン、スマートフォン、タブレット、スタンドアロンVRヘッドセット、
ディスクリートGPU
ゲーミングデスクトップ、ワークステーション、ゲーミングノートパソコン、
仮想(クラウド)GPU
クラウドサーバー、仮想マシン
最適な用途
統合型GPU
日常的なコンピューティング、軽めのゲーム、モバイルアプリケーション
ディスクリートGPU
ハイエンドゲーム、 3Dコンテンツ制作、ローカルAIワークロード
仮想(クラウド)GPU
AIワークロード、リモートレンダリング、クラウドベースのアプリケーション

統合型GPUはCPUとシステムリソースを共有ため、一般的に電力効率が高く、スペースや電力に制約のあるデバイスに適しています。

ディスクリートGPUは独自の処理ハードウェアと専用メモリを備えており、消費電力と発熱量の増加という代償を伴うものの、より高いグラフィックスと演算性能を提供する。

仮想GPUは、GPUコンピューティングリソースをリモートで提供することで、アプリケーションがローカルデバイスではなくデータセンターにホストされているGPUハードウェアを使用できるようにします。

GPUとグラフィックスカードの違いは何ですか?

GPUとグラフィックスカードという用語はしばしば同じ意味で使われますが、実際には異なるものを指します。

概要
GPU
グラフィックス計算を実行するプロセッサー。
グラフィックカード
ディスクリート GPUを内蔵するハードウェアコンポーネント。
内容
GPU
処理コアとオンチップロジック、
グラフィックカード
GPU、VRAM、冷却装置、電源供給装置、およびディスプレイ出力
搭載場所
GPU
グラフィックスを処理するコンピューターやその他のデバイス、
グラフィックカード
専用グラフィックスを搭載したデスクトップPCやノートPC

すべてのグラフィックスカードにはGPUが搭載されていますが、すべてのGPUがグラフィックスカード上に搭載されているわけではありません。統合型GPUはCPUと同じチップまたはパッケージに組み込まれており、別個のグラフィックスカードを使用するのではなく、システムリソースを共有。

GPUは何に使われるのですか?

GPUは、ワークロードに並列処理が可能な多数の計算が含まれるあらゆる場面で使用されます。

  • ゲームとリアルタイム3D :スマートフォン、PC、ゲーム機、その他のデバイス向けのゲームやインタラクティブな体験のためのフレームをレンダリングします。
  • VRとAR :特にVRにおいて、快適な体験に必要な没入感のある映像をレンダリングし、高水準で安定したフレームレートを維持する。
  • AIと機械学習:多数の並列数学演算を伴う機械学習モデルのトレーニングと推論を高速化する。
  • 動画およびコンテンツ制作:クリエイティブアプリケーションにおけるビデオエンコーディング、レンダリング、視覚効果 (VFX)、およびGPUアクセラレーションによるワークフローを高速化します。
  • シミュレーションとデジタルツイン:工学、自動車、産業分野の可視化のために、物理演算、粒子シミュレーション、照明シミュレーション、その他の計算シミュレーションを実行します。
  • ウェブグラフィックス:WebGLなどのAPIを使用することで、ブラウザがGPUアクセラレーションを利用してインタラクティブな2Dおよび3Dグラフィックスをレンダリングするできるようになります。

GPUとUnity

Unityでは、GPUはアクティブなURP (URP)またはHigh Definition Render Pipeline(HD レンダーパイプライン)設定に従ってフレームをレンダリングします。GPU使用状況プロファイラモジュールは、フレームの各部分がどれだけのGPU時間を消費しているかを表示し、開発者がレンダリングのボトルネックを特定するのに役立ちます。GPU常駐ドロワーは、GPUインスタンス化を利用して、多数のオブジェクトをレンダリングする際の描画呼び出しとCPUオーバーヘッドを削減します。

よくある質問(FAQ)

ゲームがGPU 依存であるとはどういう意味ですか?

ゲームがGPU 依存であるというのは、GPUがフレームをレンダリングするのにかかる時間が、CPUがフレームを準備するのにかかる時間よりも長い場合を指します。高解像度、複雑なシェーダー、オーバードローなどのレンダリング要求は、GPUのフレーム時間を増加させ、フレームレートを制限する可能性があります。プロファイリングは、CPUとGPUのどちらがボトルネックになっているかを特定するのに役立ち、UnityのGPU使用率管理ガイドでは、一般的な最適化手法が解説されています。

コンピューターはGPUなしでも動作しますか?

コンピュータは専用のGPUがなくても動作できますが、グラフィックスをディスプレイほとんどのコンピュータは、統合型またはディスクリート GPUを使用しています。一部のサーバーは、グラフィックスをレンダリングする必要がないため、GPUを搭載せずに動作し、代わりにCPUを使用してソフトウェアレンダリングで画像を生成することができます。しかし、要求の厳しいリアルタイム3Dグラフィックスにおいては、CPUベースのレンダリングは一般的にGPUアクセラレーションよりも効率が劣る。

GPUベンチマークとは何ですか?

GPUベンチマークとは、フレームレート、フレーム時間、合成スコアなどのメトリクスを用いて、グラフィックスや演算性能を測定するテストのことです。合成ベンチマークは、標準化されたワークロードを実行してGPUを比較するのに対し、実世界ベンチマークは、実際のゲームやアプリケーションにおけるパフォーマンスを測定します。結果は、解像度、グラフィックス設定、ドライバー、および特定のワークロードによって異なる場合があります。

関連用語

3D レンダリング

3D レンダリングは、ライティングアルゴリズム、テクスチャマッピング、マテリアルプロパティを使用して 3D シーンデータから 2D 画像を生成するプロセスであり、リアルタイムアプリケーションのパフォーマンス要件に対して視覚的忠実度をバランスさせます。

レイトレーシング

レイトレーシングは、個々の光線が表面と相互作用する際にそれを追跡することによって、光の物理的な挙動をシミュレートし、現実感のある反射、影、環境光を作り出す高度なレンダリング技術であり、非常にリアルな仮想環境を実現します。

FPS

1 秒あたりのフレーム数 (FPS) は、1 秒間に表示される画像の数を示します。レートが高いほど (VR アプリケーションでは 60 - 120 が理想的) 動きが滑らかになり、没入型体験でのシミュレーション酔いのリスクが軽減されます。