CPUとは
CPU(Central Processing Unit)は、パソコンの周辺機器からデータを受け取り、制御・演算を行います。周辺機器とは、グラフィックボード、キーボード、マウス、マイクなどです。
現在のパソコン向けのCPUは主にIntel社とAMD社があります。
基本的な性能指標
CPUの性能は次のような指標ではかられています。
- クロック数
- コア数
- バス幅
- キャッシュ
- 拡張機能
クロック周波数
クロック周波数(クロック数)とはCPUが処理をする際の信号の速さです。
CPUの処理は、クロック信号を発生させる周波数発生回路と同期しながら演算処理を行います。
そのため、この「周波数が高い」=「秒間あたりの処理数が多い」となり、CPUの動作が優れていることになります。
しかし、単純にCPUのクロック周波数を上げ続けると、その分発熱し、結果的に速度低下をおこします。そのため、一概にクロック数が高いCPUほど良いとは限りません。
コア
コア(core)とは、ダイまたはチップ上にある、独立したCPUの事です。
マルチコア技術
コアが1つだけだった時代の話ですが、CPUの性能を上げる事はクロック数を上げる事でした。(勿論それには限りませんが)
しかし、単純にクロック数を上げると発熱しますし、限界があります。そこでコア自体を増やす方針となりました。
1つのダイ上に複数のコアを乗せる事で、性能向上を見込めます。これがマルチコア技術です。
バス幅
キャッシュメモリ
その他の拡張機能
ハードウェアマルチスレッディング
1つのプロセッサを論理的に2つ以上のプロセッサと認識させる技術。
ハード的には1つのCPUだが、OSからは2つ以上のプロセッサになる。
4コア8スレッドの8スレッドの部分
インテルの場合はハイパースレッディング技術と言う。
AMDではSMT(Simaltaneous Multi Threading)と言う。
とNX
CPUが持つ、メモリ保護機能のことをXD、NXビットといいます。
Intel社ではXD(Execute disable)と言い、AMD社ではNX(No execute)と言います。
DEP(Data Execution Prevention)とも呼ばれます。
この機能を使用するには、BIOSで有効にしてかつ、OS側でも対応してある必要があります。
Intel VT/AMD-V
仮想化は元々はソフトウェアで実装されていましたが、これをハード側で支援することで、仮想化によるパフォーマンスの低下を防ぐ技術です。
Vt-d
EIST(Enhanced Intel SpeedStep Technology)
Intelの省電力技術。
もともとはIntel SpeedStepテクノロジから始まる技術。
インテル ターボブースト テクノロジー
レジスタ
冷却機構
ヒートシンク
ファン
液体冷却
水、油など
ヒートパイプ
マルチプロセッサとメモリ共有
マルチコア、ハイパースレッドなどの技術によりCPUの性能は格段に上昇を続けていますが、それでもサーバ機では更なる処理性能を必要とします。そのような場合は、物理的なCPUを複数搭載する事があります。これを対称型マルチプロセッシング(SMP:Symmetric Multiple Processsing)といいます。
ステッピング
CPUも完璧ではないため、不具合があります。この不具合の修正や、機能向上を目的として、バージョンアップが行われます。このバージョンをステッピングと言います。
CPUを複数搭載する場合は同じCPUでもこのステッピングが異なるとうまく動作してくれない事があるので注意が必要です。
UMAとNUMA
UMA(Unified Memory Address)
NUMA(Non Unified Memory Address)