Table of Contents
ブランチ予測は、確かに知られている前にブランチ( if-else決定など)の結果を推測することによって、指示の実行の流れを改善するためにコンピュータアーキテクチャで使用される技術です。 これは、実際のブランチの決定を待っていたことにより、プロセッサの効率性を高めることで、遅延を減らすのに役立ちます。
支店の予測の種類
分岐予測には、それぞれ異なるレベルの複雑さと精度の異なる方法があります。最も一般的なタイプには、静的予測と動的予測が含まれます。
静的対動的予測
静的予測は、ブランチが取られるか、取らないことを常に予測するなど、固定規則に依存しています。動的予測は、ハードウェアの履歴を使用して、ブランチの過去の動作に基づいてより詳細な情報推測を行います。
動的予測の実用例
ダイナミックブランチ予測に使用される2ビットの飽和カウンターを検討してください。カウンターには、00、01、10、11、01、01、10、11、01の4つの状態を持つことができます。10と11は「テイクン」を予測しながら、'取らない」を予測します。実際のブランチ結果に基づいて、カウンターの更新。
カウンターが10で枝が取られると、枝が11に引っ掛かり、枝が取らないと01に引っ掛かります。このシステムは、時間をかけて予測精度を向上させることができます。
予測精度の計算
予測精度は、予測の割合で測定することができます。例えば、100 ブランチのうち 90 が正しく予測されている場合、精度は 90% です。
- 正しい予測: 90
- 総予測:100
- 精度 = (調整 / 全体) × 100 = 90%