|
|
|
|
|
|
|
|
|
- 第2章 GPUと専用計算機の仕組み
章トップ(目次)
2-1 GPUとは何か
2-2 並列計算モデル(SIMD / SIMT)
2-3 GPUのメモリ階層と帯域
2-4 スレッド管理とスケジューリング
2-5 GPUが得意な処理・不得意な処理
2-6 GRAPE計算機の誕生
2-7 GRAPE-1の構造と思想
2-8 GRAPE-DRとASIC化
2-9 CPUとGPUの違い
2-10 専用計算機の思想とFPGAへの継承
▶ 第3章 FPGAの仕組みへ
レジスタの役割
レジスタとは、CPU内部に存在する
非常に高速な記憶領域です。
CPUが命令を実行する際に必要なデータや状態は、
まずレジスタに置かれます。
メモリ(主記憶)と比べて容量は極めて小さいものの、
アクセス速度は桁違いに高速です。
このため、CPUの性能は
「どのようなレジスタを持ち、どう使うか」に
大きく依存します。
なぜレジスタが必要なのか
CPUは計算を行う際、
メモリから直接データを読み書きすると
大きな時間がかかります。
そこでCPUは、
直前に使うデータや計算結果を
一時的にレジスタへ保存し、
高速に処理できるようにしています。
代表的なレジスタの種類
| レジスタ名 | 役割 |
|---|---|
| プログラムカウンタ(PC) | 次に実行する命令のアドレスを保持する |
| 命令レジスタ(IR) | 現在実行中の命令を保持する |
| 汎用レジスタ | 演算対象のデータや結果を一時的に保持する |
| フラグレジスタ | 演算結果の状態(ゼロ・キャリーなど)を保持する |
レジスタと命令実行の関係
第2節で説明した命令実行サイクルでは、
ほぼすべての段階でレジスタが使われています。
- PCが次の命令の位置を示す
- IRに命令が格納される
- 汎用レジスタで演算が行われる
- フラグが分岐条件に使われる
つまり、
レジスタはCPU内部の「作業机」のような存在です。
作業机が広く、整理されているほど、
処理は効率よく進みます。
CPUごとのレジスタ構成の違い
CPUの種類によって、
レジスタの数や役割は大きく異なります。
初期のCPUではレジスタ数が限られていましたが、
近年のCPUでは多くの汎用レジスタを持ち、
高度な最適化が行えるようになっています。