議論:キャッシュラインの変更(元の議論では 16→64バイトの変更)とプリフェッチのどちらが有効か

MAC オタさんは元スレの 767 で
> ここで書いているプリフェッチわハードウェアによる実装も含むす。

ここまでずっとマルチワードキャッシュライン v.s プリフェッチ命令
(ソフトウェアプリフェッチ)の話をしていたと信じていたのですが。。。

元スレの 730 で MACオタさんが書いたように、マルチワード
キャッシュラインはハードウェアプリフェッチの1種です。
> 64byte/line = 32byte/line × 2 hardware prefetch
ただ 現在の一般に hardware prefetch と呼ばれる機構は、シーケンシャル
アクセスパターン/ストライドアクセスパターンを読んで、次のアクセスに
備えるようなタイプです。
そのため ある程度データに幅のあるストリームデータがターゲットになり、
ランダムアクセスのプリフェッチには逆効果だと思われます。

> マルチプロセスやTLP (Thread Level Paralellism)わ現代のプロセッサの
> 重要なテーマすから,タスクの種類や数に合わせてメモリアクセスを調整
> するという概念わ,今後実装されてくると思うすよ。
> 実際にPowerPCのBook E規格でわPIDレジスタという,プロセス番号をプロ
> セッサ内部で管理するレジスタが規定されているすけど,たぶんOSと強調
> してプロセス単位でプロセッサの挙動を調整するために使うんじゃないかと
> おもわれるす。
この内容には同意します。
一応、書いておくと、研究レベルではラインサイズや連想度を動的に変更
可能なアーキなんかが提案されています。

http://kasuga.csce.kyushu-u.ac.jp/~lsi-fab/CHIP/CD97-05.html
http://ne.nikkeibp.co.jp/award/papers/2002_univ19.pdf

後の pdf にはキャッシュの消費電力に関する考察もあります。