本章では、サーバ内部で実際に何が起きているのかを理解するために、 コンピュータアーキテクチャの基礎を体系的に学習する。
CPU・メモリ・ストレージ・GPUなどの役割を理解し、 システム性能を構成する要素を分解して捉えられるようになることを目的とする。
1. CPUの役割
CPU(Central Processing Unit)は、コンピュータの中枢として命令の実行を担う。
- 命令の取得(Fetch)
- 命令の解釈(Decode)
- 命令の実行(Execute)
このサイクル(フェッチ・デコード・エグゼキュート)を高速に繰り返すことで、 プログラムが実行される。
性能は主に以下で決まる。
- クロック周波数(GHz)
- コア数
- キャッシュ構造
2. コア・スレッド
CPUは複数のコアを持ち、それぞれが独立して処理を行うことができる。
■ コア(Core)
- 実際の処理ユニット
- 並列処理の単位
■ スレッド(Thread)
- 論理的な実行単位
- ハイパースレッディングにより1コアで複数スレッド処理可能
コア数が多いほど並列処理に強く、スレッド数が多いほど効率的な処理が可能となる。
3. メモリ(RAM)
RAM(Random Access Memory)は、CPUが処理するデータを一時的に保持する領域である。
- 高速アクセスが可能
- 揮発性(電源オフで消える)
性能に影響する要素:
- 容量(GB)
- 速度(MHz / MT/s)
- レイテンシ
メモリ不足はパフォーマンス低下の主要因となる。
4. HDDとSSD
ストレージはデータを永続的に保存する装置である。
■ HDD(Hard Disk Drive)
- 磁気ディスクによる記録
- 大容量・低コスト
- アクセス速度が遅い
■ SSD(Solid State Drive)
- フラッシュメモリによる記録
- 高速アクセス
- 耐衝撃性が高い
現代のサーバでは、性能重視でSSDが主流となっている。
5. キャッシュメモリ
キャッシュメモリは、CPUとメインメモリの間に位置する高速メモリである。
- L1:最速・最小
- L2:中間
- L3:大容量・共有
頻繁にアクセスされるデータを保持することで、 メモリアクセスの遅延を削減する。
キャッシュヒット率が高いほど、全体の処理速度は向上する。
6. GPUとは
GPU(Graphics Processing Unit)は、大量の並列演算に特化したプロセッサである。
- 数千のコアを持つ
- 行列演算に強い
- AI・ディープラーニングで重要
CPUとの違い:
- CPU:汎用処理(低並列・高柔軟性)
- GPU:並列処理(高並列・特化型)
AI処理ではGPUが性能のボトルネックを大きく改善する。
7. バス・I/O
バスは、CPU・メモリ・ストレージ間でデータをやり取りする経路である。
- データバス:データ転送
- アドレスバス:位置指定
- 制御バス:制御信号
I/O(Input/Output)は、外部デバイスとの通信を指す。
- ネットワーク
- ディスクアクセス
- 周辺機器
バス帯域やI/O性能は、システム全体のボトルネックとなることがある。
まとめ
本章では、サーバ内部の基本構造を構成する要素を整理した。
- CPUが命令を実行する中枢
- コア・スレッドで並列処理を実現
- メモリが高速な作業領域を提供
- SSDが高速なデータ保存を担う
- キャッシュがアクセス遅延を削減
- GPUが並列演算を加速
- バス・I/Oが全体を接続
これにより、サーバ性能を構成する要素を分解して理解できるようになる。