本記事は、PCゲームにおけるCPUやGPUにおける「ボトルネック」についてさくっと説明した記事です。ただし、「このグラボならこのCPU」といった相性を具体的に挙げていく記事ではないので、その点は事前にご理解ください。手短にボトルネックというものを知りたいという人向けです。ただし、ボトルネックというのは明確な回答が難しい部分も多く、そのようなところでは筆者の主観による意見もやや含まれているかと思うので、その点もご了承ください。
目次 非表示
ボトルネックの意味
「ボトルネック」というのは、元々はワインなどの瓶の細くなっている部分を指す言葉です。それに由来し、仕事や処理などのワークフローにおいて、全体の効率の低下を引き起こしている箇所を指す意味で使われるようになったようです。
例えば、複数のプロセスで一つの仕事を流れ作業で行う場合に、どこかのプロセスで作業遅いと、遅い分マイナスになるのはもちろん、その分次のプロセスも作業に取り掛かるのが遅れてしまいます。その場合には他のプロセスの処理速度が速かったとしても全体の作業量は低くなってしまいます。その際に、作業の遅い箇所を指して「ボトルネックになっている」といった感じで使います。
ボトルネックが発生してしまっていると、他の部分が本来の能力を最大限活かせていないことになるため、もったいないです。また、場合によっては余計な予算や労力を要求されてしまう可能性もあるので、出来れば避けたいのがボトルネックです。
PCゲームにおけるボトルネック
本題である、PCにおけるボトルネックの話をしていきたいと思います。
ゲームにおけるボトルネックを簡単に言うと、「CPUとGPU(グラボ)のどちらかが、もう片方の処理速度に付いていけていないため、最終的なパフォーマンスが低下している」という状況です。
そのような状況が発生すると、高価なグラボを導入していても、その性能が発揮されていないということが起き得るので、非常にもったいないです。これがいわゆるPCにおけるボトルネックです。ここまでは、恐らくほとんどの人が把握している内容だと思います。
そして、上記の説明を聞いた多くの人は、「CPUとGPUの性能のバランス(相性)が良い同士で選ぶのが良い」と思うかもしれません。ただし、そもそも「バランス(相性)の良いCPUとGPU」って何?という話になりますし、よくわからなければ「ミドルレンジ」のような性能区別で同じ帯に属するものを選ぶのが良いのかな、という考えになるのが自然かと思います。
ただし、ゲームがCPUとGPUに求める性能は別ですし、予算の問題もあります。そもそもCPUとGPUは異なるプロセッサーであって性能を単純比較することができないため、話はそんなに単純ではありません。
上記のこと以外にも、PCにおけるボトルネック問題は様々な要素が関係してくるため、一概に説明するのが正直難しいです。予算が明確かつ、特定のゲームに絞っている訳でないなら、明確な回答をすることは難しいのです。
そのため、本記事でも納得のいく説明は正直できないかもしれませんが、思い当たるボトルネックに関することを列挙し、それぞれの説明と筆者の考えをざっと載せてみようかと思います。
CPU:実はハードルは低い?
まずはCPUにおけるボトルネックについてです。主な要点は下記です。
- 実はコア数は8で性能は頭打ち?実は現状では8コア(高性能コア)で、CPUのコア数におけるゲーム性能の向上はほぼ頭打ちと言われています。
- GPU性能(フレームレート)が高いほど、必要なCPU性能も高くなる傾向(前提)GPU性能が高いほど描写できるフレームが多くなるので、それに応じてCPUに求められる処理量も増加するためです。ただし、前述のようにコア数による向上はほとんどのゲームで限界があるので、上限値は意外と高くなく、Core i9やRyzen 9はゲーム性能だけを考えるなら基本的にほとんど意味がないです(クロック上昇などによるわずかな向上)。
- 1コアあたりの性能やキャッシュ量が今は重要視されている現在ではコア数の増加による性能向上に限界が見えているので、結果的にコア自体の性能やキャッシュなどの要素が重要視されています。
- ゲームにおけるCPUの役割は画像出力以外のこと(後述)ゲームにおけるCPUの役割を知ることで、CPU性能が重要なタイトルを予測することができます。少し長くなるので後述。
- サンドボックス・オープンワールド・シミュレーション系はCPU性能の重要度高め変化するオブジェクトなど、常に更新し続けなければならない情報が多いゲームはCPU性能の重要度が高い傾向があります。
- 並行して行う処理がある場合はやや余裕を持っておきたいゲーム配信など、ゲームと並行して何かのアプリケーションを稼働させたい場合は、少し性能に余裕は持っておきたいです。
- CPU費用を節約すれば、GPUを強化できるどちらを重視するかは個人次第。
実は8コアあればゲームでは十分?
ゲームにおけるCPUのGPUに対するボトルネックを触れていくにあたり、真っ先に触れておきたいのがこれです。
最近ではもう浸透してきているかとも思いますが、実は現状のPCゲームにおいては、高性能なコア(Pコア)が8コアあれば、CPUのコア数で向上できるゲームパフォーマンスはほぼ頭打ち、という考えがあったりします。
そして、実際のCPU別のゲームのfps比較などを見ても、それがほぼ事実であることが判ります。下記に「GeForce RTX 4090」というハイエンドGPUを用いたCPU別のゲームテストの結果を載せているので、そちらを見てみましょう(海外サイト参考)。
CPU -合計コア(Pコア) | スコア |
---|---|
Ryzen 7 7800X3D – 8コア(8P) | 266.3 |
Core i9-14900K – 24コア(8P) | 260.2 |
Core i9-13900K – 24コア(8P) | 256.1 |
Ryzen 9 7950X3D – 16コア(16P) | 252.6 |
Core i7-14700K – 20コア(8P) | 252.2 |
Core i7-13700K – 16コア(8P) | 247.3 |
Core i5-14600K – 14コア(6P) | 237.0 |
Ryzen 7 7700X – 8コア(8P) | 234.5 |
Ryzen 9 7900X – 12コア(12P) | 232.8 |
Core i5-13600K – 14コア(6P) | 232.2 |
Ryzen 7 7700 – 8コア(8P) | 231.2 |
Ryzen 9 7950X – 16コア(16P) | 230.8 |
Ryzen 5 7600X – 6コア(6P) | 229.8 |
Core i9-12900K – 16コア(8P) | 226.3 |
Core i7-12700K – 12コア(8P) | 216.9 |
Ryzen 7 5800X3D – 8コア(8P) | 213.1 |
Core i5-12600K – 10コア(6P) | 201.5 |
Ryzen 9 5950X – 16コア(8P) | 193.3 |
Ryzen 9 5900X – 12コア(8P) | 192.8 |
Core i5-13400F – 10コア(6P) | 189.3 |
Ryzen 7 5700X – 8コア(8P) | 186.9 |
Ryzen 5 5600X – 6コア(6P) | 185.0 |
上のグラフを見ると、「Core i9-14900K(24コア)」よりも「Ryzen 7 7800X3D(8コア)」の方が上だったりなど、全体のコア・スレッド数の差がボトルネックに影響している印象はなく、他の要素の方が大きそうであることがわかると思います。
この原因は、ゲーム側が8を超えるコア数を上手く活かせないようになっている(最適化されていない)などが考えられていますが、そこはとりあえず置いておくとします。
話を戻しますが、恐らくこのコア数によるゲーム性能の限界というのが主な要因で、Intel CPUではCoreの第11世代~第14世代(記事執筆時点で最新)において、高性能コアの数は最大8で固定されています(消費者向けモデル)。第11世代~第14世代のCore i7とCore i9はPコアの数が同じ8となっています。このような手法をメーカー側が取っていることも、8コアが限界という裏付けになっていると思います。
また、今回は「RTX 4090」というハイエンドGPUを基準に見ましたが、ミドルレンジ帯のGPUなどであれば、6コアと8コアでも差がほとんど無いように見えたりもする場合も多いです。そのため、CPU性能が重要とはいっても、実はある程度高ければOK程度の認識で良いかなと個人的には思います(2024年4月時点では)。
GPU性能が高い(フレームレートが高い)ほど、必要なCPU性能も高くなる傾向
前提を後回しにしてしまいましたが、ゲームではGPU性能(フレームレート)が高くなるほど求められるCPU性能も高くなる傾向があります。これはシンプルに、GPU性能が高くなるほど描写できるフレーム数が増え、それに応じてCPUの処理量も増えるという話です。
しかし、前述のように現状では8コアあればゲームにおけるCPUでのパフォーマンス向上の伸び率は小さいという話があります。そのため、CPU側におけるハードルは実は割と低いので、古いCPUを使っている場合や、よほど高性能なハイエンドGPUを使っている場合でない限りは、実はあまり問題にはならない項目だと思います。
ただし、フレームが多いとCPU負荷が増えるということは、逆に言えば、GPUが生成できるフレームが少なければ、CPUに求められる性能も低くなるということは一つポイントです。
たとえば、4Kレベルの高解像度やレイトレーシングなど、GPU負荷が大きすぎてフレームが少なくなる設定であったり、単純にGPU負荷がものすごく重いゲームなどの場合では、求められるCPUの性能は低くて済むということです。
感覚的には、重量級ゲームや超高設定だとCPUの性能も高い方が良いと思うかもしれませんが、GPU性能が重視なゲームの場合はその逆だったりするので、頭の片隅に置いておくと良いかもしれません。
ゲームにおけるCPUの役割
前述のように、実は現状ではゲームでCPUが貢献できる性能の限界はそこまで大きくはないですが、CPUはゲーム以外でも処理性能を求められることが多いですし、場合によっては予算を増やして良いCPUにしたい、という人も居ると思います。
そのような人がある程度自分で判断できるように、ゲームにおいてCPUが担当する処理をざっと載せておこうと思います。一言でいうと、画像の出力以外のことはほぼ全てです。主な処理内容を書き出すと以下のような感じです。
- 操作された内容をゲームに伝えるすごく全般的な話ですが、プレイヤーが操作した内容をゲームに伝え、それによって発生する状況を計算します。
- キャラクターなどの位置の計算上述の内容と被りますが、位置が移動するものの場所の計算もCPUが行います。
- 変化するオブジェクトの管理ユーザーの操作・設定・周りの影響などによってリアルタイムで変化するオブジェクトは、CPUが常に監視して更新を行う必要があります。そのため、そのようなオブジェクトが増えるほどCPU負荷が高くなる傾向があります。そのようなオブジェクトを多用する前提のゲームは基本的にCPU性能が重要なので、覚えておくと良いです。
- UI系ゲームや操作の状況に応じて更新する必要があるUI系もCPUが計算します。たとえば、アイテム欄、HPバー、ミニマップ等などです。これ自体の処理は恐らく大したものではありませんが、基本的に全てのフレームに付属するものなので、一定の処理が常に必要となります。
- GPUとの通信最終的に画像を出力するGPU(グラフィックスドライバ)に必要なデータを、GPUに応じた形に変換して送ります。ここには上述の内容の他に、テクスチャなどのデータも含まれており、それらを常に送信し続けています。
主にゲーム内で何かが変化する場合に、その状態を受け取って位置や状態を計算するという感じの処理が多いです。そのため、ゲーム内に多数の変化するオブジェクトや動くものが存在する場合には、CPU負荷が高くなる傾向があります。
その他
その他のCPU関連のことは短めに下記にまとめています。
前述の内容と繋がりますが、2024年現在ではコア数の増加によるパフォーマンス向上は8コアあたりからほぼ意味を成さないことが多くなったので、結果的に1コアあたりの性能やキャッシュ容量による性能向上が今では重要視されています。
たとえば、前述のグラフで「Core i9-14900K」をも上回るパフォーマンスを発揮した「Ryzen 7 7800X3D」は大容量のL3キャッシュ(96MB)を搭載したCPUです。
最大クロックが高かったり、キャッシュ容量が増量したCPUがあったりするので、それらを選択するとゲーム性能は少し向上に繋がることがあります。
そのようなCPUは高価であることが多いですし、コア数による向上に限界がある以上、それらのCPUは手放しでおすすめできるものではないものの、予算が潤沢でCPUにもこだわりたい場合には、1コアあたりの性能やキャッシュ容量に注目してみると良いかもしれません。
前述のCPUの役割からも推測できますが、何かの変化が起きるオブジェクトを多数配置する系のゲームや、プレイヤー自身などに逐次変化する大量に要素(数値)を盛り込んでいるなど、常に更新し続けなければならない情報が多いゲームでは、CPU性能の重要度が高い傾向があります。
たとえば、マインクラフトを代表とするサンドボックス系のゲーム、オープンワールド系のゲーム、シミュレーション系のゲームなどです。
言うまでもないことかもしれませんが、予算に限りがある場合、CPU費用を節約すれば、その分をGPUに回して強化することができます。
どちらを重視するかは各人の用途や考え方次第だと思いますが、前述の内容を踏まえると、ゲームがメインの場合には基本的にGPUをやや重視した方が快適度が高くなることが多い、と個人的には思っています。
GPU:基本はこちらが重要
次に、GPUにおけるボトルネックについてです。主な要点は下記です。
- CPUからの命令が間に合わなければ、GPUが性能を最大限発揮できないCPUの方でも触れた話ですが、CPUの処理の上でゲームがあるので、CPU性能が低すぎるとGPUが性能を発揮できません。…が、現状ではほとんどのゲームにおいては実はCPU側のハードルは割と低い(前述)ので、基本はGPU重要度が高いことが多いです。
- CPU性能を持て余すなら、グラボに費用を割けば良かったとなる可能性ゲームの処理の大部分は画像処理なので、ゲームに限れば重要度は基本GPUの方が上です。とはいえ、ゲームにおいてもCPUは重要で、他の処理にも関わってくるので、配分をどうするかは難しいところです。
- ゲームにおけるGPUの役割GPUの役割はCPUからの命令に応じて画像を出力することです。
- VRAMを大量に使用する場合に注意(4K・レイトレーシング・VR etc.)中にはVRAMを大量に使用する用途があるので注意です。
- GPGPU(GPUを画像処理以外にも応用すること)にも注目最近ではゲーム以外での活用法も増えており、そちらではCPU性能はほぼ関係なかったりすることもあるので、そちらにも注目です。
CPU性能を持て余すなら、グラボに費用を割けば良かったとなる可能性
GPUのボトルネックにおける最大のポイントは「どこまでグラボに費用を割くか」という部分だと思います。
GPUの役割は「CPUから受け取った命令に応じて画像を出力する」ことなので、CPUから命令がこなければ処理をできず、性能を持て余してしまうことになるので、CPUが前提のようにも思えます。
ただし、逆に言えば、GPU性能がCPUに比べて低すぎる場合には、CPUが性能を持て余してしまうことになり、もっとグラボに費用を割けば良かった…となる可能性があります。
しかも、3Dの画像出力というのは負荷が非常に高いため、基本的に3Dゲームの処理内容のほとんどは画像という事情があります。そのため、タイトルによっての差は多少出るものの、「高性能なGPUだから高性能なCPUじゃないとダメ」とは限らず、特に価格が安くなるほど、実際のところはGPUの方に掛ける費用が多い方がゲームパフォーマンスは高くなることがほとんどだったりします。
プレイ予定のゲームタイトルにはよりますし、CPUはゲーム以外の処理にも関わるという点は留意しておく必要はあるものの、ゲーム性能に限るならをCPUよりもGPU(グラボ)の方が基本的に重要というのは覚えておくと良いと思います。
VRAMを大量に使用する用途があるので注意(レイトレ・VR etc.)
ゲームの中には、VRAM(GPU専用のビデオメモリ)を大量に使用するものがある点に注意が必要です。たとえば、レイトレーシング、VRなどがあります。
例として、レイトレーシング性能の比較を見てみましょう。丁度良い比較として、「RTX 4060 Ti」にはVRAM容量以外は全く同じで、8GBと16GBモデルの二つがあるので、そちらの比較を見ていきたいと思います。
GPU | fps |
---|---|
1080p@RT無し | |
RTX 4060 Ti 16GB | 107.9 |
RTX 4060 Ti 8GB | 107.0(-0.7%) |
1440p@RT無し | |
RTX 4060 Ti 16GB | 78.0 |
RTX 4060 Ti 8GB | 77.1(-1.2%) |
1080p@RT有り | |
RTX 4060 Ti 16GB | 71.1 |
RTX 4060 Ti 8GB | 67.4(-3.9%) |
1440p@RT有り | |
RTX 4060 Ti 16GB | 50.1 |
RTX 4060 Ti 8GB | 40.9(-18.4%) |
結果を見ると、レイトレーシング無し(ラスタライズ)では1080p→1440pで差がありませんが、レイトレーシング利用時の1440pでは18.4%もの差が出ています。基本のコア類の仕様は全く同じものを有していても、VRAMの差だけでここまでの差が出ることがあります。
また、上記の表では1080pでは大丈夫なようにも見えますが、重量級ゲームでは1080pでも8GBだとネックになることもありますし、局所的な負荷でfpsが安定しない確率も高くなります。このように、特にレイトレーシングはVRAMが不足するとパフォーマンスがガクッと落ちるという特徴があるため、重めのゲームで安定して利用したいなら、始めからVRAMを多めに搭載しておきたいところです。
また、ゲームではありませんが、生成AIなどでもGPUは活用が広まっており、そちらでも特に画像生成AIなどではVRAMを多く使用することが多く、容量が不足するとそもそもエラーになって処理ができないということもあるので、GPUにおけるVRAMの重要度は以前よりも増している印象があります。
グラボはCPUと違ってメモリを増設したり交換したりできないので、購入前に用途を出来る限り明確にして、VRAM必要量を決めておくことをおすすめしたいです。
GPGPU(GPUを画像処理以外にも応用すること)にも注目
ゲームから話は逸れますが、GPUを画像処理以外にも応用する「GPGPU」という使い方があります。
GPUは画像処理(特定の並列処理)に特化したものですが、この並列処理が得意ということを利用しようということです。
たとえば、記憶に新しいところだと、「仮想通貨マイニング」「AI」がある他、「動画のエンコード」などでは結構古くから活用されています。その他にも膨大な処理能力を必要とする処理全般で活用が考えられており、いきなり新しい有用な使い方が出てくる可能性もあるので、今は興味がなくても知識だけは持っておいて損はないかなと思います。
まとめ
ゲームでは基本グラボ(GPU)が重要だけど、安定性や用途次第ではCPUも重要なので、軽視はできない
上述のことを踏まえて、それぞれの人が判断するのが一番だとは思いますが、一応まとめとしては見出しのような感じになります。
特に3Dゲームにおいては画像が処理のほとんどを占めるので、そこに最も貢献できるグラボ(GPU)の重要度が基本高いです。2024年現在では、ほとんどのPCゲームではCPUのコア数による性能向上は8コア程度が限界だというデータもあるので、CPUは大きくネックにならない程度を備えておき、残りはグラボ(GPU)に回すのが、ゲーム用途では最適と言えると思います。
ただし、中にはCPU性能が特に重要なゲームも存在する他、ゲーム以外の処理はCPUが基本行うため、軽視することは出来ません。そのため、自分の用途や経済状況を考えて判断することにはなります。
ざっくりとした説明ではありますが、内容は以上です。
ただし、CPUもGPUも「ゲーム自体」によって必要な処理は変わってきますし、特に2024年現在ではCPU面の多コア化への最適化が不十分であるように見られるケースも多いので、今後は状況が変わる可能性もあると思います。
また何か変化があれば更新したいと思いますが、いつにおいても、ボトルネックというのは一概に言える簡単なものではないということは心に留めておくと良いかなと思います。