CPU:中央演算装置

cpu

CPUとは?構造・動作原理・性能指標

コンピュータの中核を担うコンポーネントが CPU(Central Processing Unit:中央処理装置)です。

CPUはすべての計算処理と制御を担当し、 OSやアプリケーションの動作を支える最も重要な要素です。

インフラエンジニアや開発者にとって、 CPUの仕組みを理解することは、

  • パフォーマンス設計
  • ボトルネック解析
  • システム最適化

において非常に重要です。

  • CPUの基本構造
  • 動作原理(フェッチ・デコード・実行)
  • キャッシュとメモリ階層
  • コア・スレッド・並列処理
  • 性能指標とボトルネック
  • 仮想化・コンテナとの関係

を体系的に解説します。

CPUとは何か

CPUとは、

命令を解釈し、計算と制御を行う装置

です。

すべてのプログラムは、 CPUによって実行されます。

CPUは、

  • 計算
  • 分岐
  • データ転送

といった基本操作を繰り返し実行します。

CPUの基本構造

ALU(算術論理演算装置)

ALUは、

  • 加算
  • 減算
  • 論理演算(AND / OR / XOR)

などの計算処理を担当します。

制御装置(Control Unit)

制御装置は、 命令の解釈と各部品への指示を行います。

いわばCPUの司令塔です。

レジスタ

CPU内部の超高速な記憶領域です。

主なレジスタ:

  • 汎用レジスタ
  • プログラムカウンタ(PC)
  • フラグレジスタ

メモリよりも圧倒的に高速です。

CPUの動作原理

CPUは次のサイクルを繰り返します。

  • フェッチ(Fetch)
  • デコード(Decode)
  • 実行(Execute)

フェッチ

メモリから命令を取得します。

デコード

命令の内容を解釈します。

実行

演算やデータ処理を実行します。

このサイクルは1秒間に数十億回行われます。

クロックとパイプライン

CPUはクロック信号に同期して動作します。

例:

  • 3GHz → 1秒間に30億回のクロック

さらに、

パイプライン処理

により複数の命令を並行処理します。

これにより、 処理効率が大幅に向上します。

キャッシュとメモリ階層

CPU性能に大きく影響するのが メモリ階層です。

  • L1キャッシュ(最速・小容量)
  • L2キャッシュ
  • L3キャッシュ(大容量・共有)
  • メインメモリ(RAM)

CPUはできるだけキャッシュからデータを取得し、 遅いメモリアクセスを避けます。

これを キャッシュヒット / ミス と呼びます。

コアとスレッド

コア(Core)

CPUの処理ユニットです。

例:

  • 4コア → 同時に4つの処理

スレッド(Thread)

1つのコアで複数の処理を扱う技術です。

代表例:

  • Intel Hyper-Threading
  • SMT(Simultaneous Multithreading)

例:

  • 4コア8スレッド

並列処理とマルチコア

現代のCPUは、 マルチコアによる並列処理が前提です。

ただし、

並列化できない処理は高速化できない

という制約があります。

(アムダールの法則)

性能指標

クロック周波数

1秒間の処理回数の目安です。

IPC(Instructions Per Cycle)

1クロックで実行できる命令数です。

コア数

並列処理能力に影響します。

実際の性能は、

クロック × IPC × コア数

で決まります。

CPUボトルネック

CPU性能が問題になるケース:

  • 高負荷計算処理
  • シングルスレッド処理
  • キャッシュミス増加

また、

  • メモリ帯域不足
  • I/O待ち

もCPU性能に影響します。

仮想化とCPU

仮想環境では、 CPUリソースは仮想化されます。

  • vCPU
  • CPUスケジューリング

ハイパーバイザが物理CPUを分配します。

オーバーコミットにより、 性能低下が発生する場合があります。

コンテナとCPU

コンテナでは、 CPUは共有リソースとして扱われます。

  • CPU制限(cgroups)
  • CPUシェア

Kubernetesでは、

  • requests
  • limits

で制御されます。

サーバーCPUの特徴

  • コア数が多い
  • ECCメモリ対応
  • 大容量キャッシュ
  • 長時間安定稼働

代表例:

  • Intel Xeon
  • AMD EPYC

まとめ

CPUは、 コンピュータのすべての処理を担う中核装置です。

  • 命令実行の中心
  • キャッシュが性能に大きく影響
  • マルチコアで並列処理
  • 仮想化環境では共有リソース

エンジニアにとっては、

性能理解と設計の基盤となる知識

です。

CPUの仕組みを理解することで、 システム全体の最適化やトラブル対応の精度を大きく向上させることができます。