0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CPUとGPUはどうやって連携しているのか? ― メーカーが違っても動く仕組みとグラフィックスAPIの全体像

0
Last updated at Posted at 2026-10-10

はじめに

「外付けGPU(eGPU)をつなぐと、CPUがタスクを自動でGPUに振り分けてくれる」と思っていませんか? 実はそうではありません。本記事では次の疑問を順に解きほぐします。

  • CPUとGPUはどうやってやり取りしているのか
  • Intel と NVIDIA、Apple と NVIDIA のようにメーカーが違ってもなぜ連携できるのか(あるいはできないのか)
  • GPUを足せば必ず速くなるのか
  • よく聞く Vulkan とは何で、ほかにどんな選択肢があるのか

1. 結論:タスクを振り分けるのはCPUではなく「ソフトウェア」

CPUが自動で「これはGPU向き」と判断しているわけではありません。どの処理をGPUに任せるかは、アプリ開発者がコードの中で明示的に決めています。CPUはその指示に従って、GPU向けの命令を準備して渡すだけです。

CPU→GPUの流れ

ポイントは、CPUが細かく手渡ししているのではなく、「指示書(コマンドバッファ)をまとめてメモリに置き、GPUがそれを自分で取りに行く」 という関係であることです。GPUはDMA(CPUを介さない直接メモリアクセス)でデータを読み込みます。

2. メーカーが違っても連携できる理由

CPUはx86やARMの命令で動き、GPUはメーカー独自の命令で動きます。両者は互いの命令を理解する必要がありません。間に「共通の規格」と「ドライバ」が挟まっているからです。

連携に必要な条件は2つだけです。

条件 役割 誰が用意するか
接続規格 データを物理的に運ぶ 業界団体(PCIe、Thunderbolt、USB4など)
ドライバ 共通APIとGPU独自命令の橋渡し GPUメーカー(またはサードパーティ)

CPUのメーカーは関係ありません。 ドライバが相手にしているのは「OS」と「PCIe」という共通の土台だからです。

ケース1:Intel × NVIDIA ― 問題なく動く

PCで最も一般的な組み合わせです。PCIeは業界標準、ThunderboltはもともとIntelが開発した規格で、NVIDIAはWindows・Linux向けに公式ドライバを提供しています。2つの条件がそろっているので問題なく動きます。

ゲーミングノートPCでよく使われるNVIDIA Optimusでは、普段はIntel CPU内蔵の省電力GPUを使い、ゲームなど重い処理のときだけNVIDIA GPUに切り替えます。この切り替えを判断しているのもCPUではなくドライバとアプリごとの設定です。

さらに両社は協業を深めています。2025年9月、IntelがNVIDIA NVLinkを備えたデータセンター向け・クライアント向けのカスタムCPUを設計・製造し、NVIDIAがIntel普通株に50億ドルを投資すると発表されました。PC向けには、NVIDIA RTX GPUのチップレットを統合したx86 SoCをIntelが開発・販売する計画です。CPUとGPUの距離が縮まれば、後述する「転送コスト」の問題が小さくなることが期待されます。

ケース2:Apple × NVIDIA ― 「ドライバの壁」の典型例

こちらは接続規格はそろっていてもドライバがなければ動かないことを示す好例です。

Intel Mac時代のeGPU対応について、Appleのサポートページでは、Macに内蔵されているものと同じGPUアーキテクチャのグラフィックカードのみがサポート対象とされており、実質AMD製が中心でした。M1世代のApple Silicon Macは外付けGPUに一切対応せず、NVIDIAのサポートはそもそも存在しない状態でした。

転機は2026年です。Tiny Corpが開発したTinyGPUはtinygradフレームワーク上に作られたmacOSアプリで、Apple承認のDriverKit拡張をインストールし、Thunderbolt/USB4経由でAMD(RDNA3以降)とNVIDIA(Ampere以降)のGPUと通信できるようにします。SIP(System Integrity Protection)を無効化する必要もありません。Tiny CorpはMac miniにRadeon RX 7900 XTXを接続し、Qwen 3.5 27Bを毎秒18.5トークンで動かせたと報告しています。

これはまさに「ドライバさえあれば、CPUのメーカーに関係なくGPUは使える」ことの実証です。ただしこのドライバはGPUメーカー製ではなくAI計算向けのもので、ゲーム用途は想定されていません。

3. GPUを足せば必ず速くなる? → 保証されない

GPUに仕事を渡すにはデータ転送のコストがかかります。特に外付けGPUでは接続の帯域が大きな制約になります。

接続方式 PCIeデータ帯域(目安) 備考
デスクトップ内部 PCIe 4.0 x16 約256 Gbps GPU本来の性能(規格値からの概算)
Thunderbolt 5 約64 Gbps
Thunderbolt 3 / 4、USB4 約32 Gbps PCIe 3.0 x4 相当

実測例として、Notebookcheckのレビューでは、RTX 4090をThunderbolt接続のeGPUで使うとPCIe 3.0 x4の速度でしか動かず、ベンチマーク全体で約33%遅くなったと報告されています。また、ノートPCの内蔵画面に映すと描画結果をケーブルで送り返す分さらに不利になるため、eGPUに外部モニターを直接つなぐと性能が改善することがあります。

だからこそ、ゲームエンジンやPyTorchのようなライブラリは、開発者がプロファイリング(計測)を重ねて「何をGPUに任せるか」を作り込んでいます。

4. Vulkanとは?

Vulkanは、アプリがGPUに命令を出すためのメーカー横断・OS横断の共通APIです。2章の図でいう「共通API」の層にあたります。

  • 策定者:業界のメンバー企業が主導するコンソーシアム、Khronos Group
  • 歴史:以前は「Next Generation OpenGL Initiative」と呼ばれていた、ゼロから設計し直されたAPI。2016年に正式リリース
  • 特徴:アプリがGPUを直接細かく制御でき、シェーダーにはSPIR-Vという共通中間形式を使う

「低レベル」であることが最大の特徴です。Vulkanはより多くの作業と責任をアプリ側に負わせる設計で、手間は増える代わりにドライバの無駄な処理が減り、CPUの複数コアから並行して命令を準備できます。

シェーダーはSPIR-Vで配布され、各社ドライバが自社GPU向けの機械語に変換します。これが「CPUとGPUが互いの命令を知らなくてもよい」仕組みの具体例です。

5. Vulkanの代替・周辺技術の全体像

分類 代表例 主な用途・特徴
① 描画API Vulkan、DirectX 12、Metal Vulkanは横断型、DX12とMetalは各プラットフォーム専用
② 計算API CUDA、ROCm/HIP、OpenCL、SYCL AI・科学計算。CUDAが事実上の標準
③ 抽象化レイヤー WebGPU、ゲームエンジン 下のAPIを意識せず書ける

WebGPUは、W3Cの仕様書でVulkan、Direct3D 12、Metalに効率よく対応付けられるようゼロから設計されたAPIと説明されています。

「翻訳レイヤー」がAPIの壁を溶かしている

  • Proton(Valve):DirectXの命令をVulkanに変換し、WindowsゲームをLinuxで動かす
  • MoltenVK(Khronos):Vulkanの命令をMetalに変換し、Mac/iOSでVulkanアプリを動かす
  • WebGPU:ブラウザが裏でOSに合ったネイティブAPIに変換する

まとめ

  1. GPUに何を任せるかはCPUではなくソフトウェア(開発者)が決めている
  2. メーカーが違っても連携できるのは、共通の接続規格(PCIe等)とドライバがあるから。CPUのメーカーは関係ない
  3. 逆にドライバがなければ動かない(Apple × NVIDIAの長年の状況)。2026年にTiny Corpのドライバ承認で、AI計算用途に限って道が開けた
  4. GPUを足しても必ず速くなるわけではない。並列性と転送コストのバランス次第で、eGPUは帯域の制約で3割程度遅くなる例もある
  5. Vulkanはメーカー横断の低レベルAPI。DirectX 12・Metal・CUDA・WebGPUなどと用途ごとに棲み分けつつ、翻訳レイヤーによって境界は薄れつつある

参考文献

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?