入力レジスタのリネームレジスタ割り当てはやってもいいけど、CP悪いやね。

レジスタなんてD-FFのカタマリだから数だけ増やすなら簡単。レジスタ自身の面積なんて
たかがしれてますが、ただし各演算器への結線が膨大になるのとセレクタが複雑になります
(=遅延が増える)。結局、昔からCPU設計者が必要十分(>最小限)な量に合わせ込みます。
レジスタ数増やしたおかげでクロック下がっても仕方ないので。レジスタは1クロックの
数分の1内で読み書き出来なきゃいけないメモリだから大変です。

分岐予測のケースでは、分岐予測ユニットもバカではありませんから9割くらい当ててくれます。
外れた場合、例えば10段のパイプラインだと後ろ9段分の途中演算を破棄して最初からやり直す
わけですが(=ペナルティ)、このときのペナルティを最小にするために仮に入力レジスタ内容の
保存(リネーム)が必要だったとします。これがオタ言うところの必要性かな?
保存(リネーム)無しの場合、もし書き換えられていればもう一度L1$からロードやり直しのため、
単純に言えばペナルティが増加して10〜11クロックになります(破棄分の9クロック+
ロード分の1〜2クロック。Power4は最大2ロード/クロック)。
ですがそもそも分岐予測ユニットによってペナルティの発生確率は0.1とすれば、保存(リネーム)
無しの場合のペナルティは10分の1に希釈されるので、保存(リネーム)無しの場合のペナルティ
増加は全体への寄与はー1〜2%であって、そのために配線性を複雑にしたり、クロックを落とすような
マネをするのは全体最適化からありえません。特にオタ言うようにリネームレジスタ3倍必要説は
受け入れられません。
クロックが変わらない、配線リソース(配線微細化、配線層数)が無限、の仮定ならよいですけど、
現実にはチップ設計ごとにかならず最適化のためのトレードオフが必要です。

あとは投機実行の例も上と同じでしょう。ヒット率が下がるならば入力レジスタのリネームレジスタ
割り当てもありですが、これはチップアーキテクトが注意深くシミュレータで決定するはずです。
現状のPower4もそうやって作られているのですから、我々素人がレジスタ不足うんぬん言うのは
おこがましいのではないでしょうか。