x86命令の所要クロック計測スレPart2
■ このスレッドは過去ログ倉庫に格納されています
00061 ◆.MeromIYCE
2006/01/11(水) 00:55:18プリフェッチ周りの思考実験が全然進まないので書き込んでなかったが、結果だけでも。
↓定量的な考察ができてないあたり、まるっきり理解してませんな。
メモリベンチをL2を切ったDothanでやって、L2ありの場合と比較する。
http://rerere.sytes.net/up/source/up11262.zip
普通のロードが遅い。これはL2に対するHWプリフェッチができない影響かな。
アクセス順変えは、L2ありだと2〜3clkだけ効くが、L2なしだと全く効かない。
つまり、アクセス順序を変えることで帯域を引き出すテクニックはL2に対してしか
効かないということだ。メモリに対しては並べ替えられてしまう?
prefetcht0(L1のみにプリフェッチ)だとロードで変わらずストアでは速くなっている。
これは、L2があるとL2を経由してメモリに書き込まれて遅くなるからだろう。
prefetcht1(L2のみにプリフェッチ)だと全体的に遅くなる。切ってあるL2に転送できないしな。
prefetchnta(L1とL2両方にプリフェッチ)だとt0と同じクロック数になり、
L2ありと比較するとストアが微妙に遅い。
どちらでもストア性能を引き出せているが、HWプリフェッチの効かない分だけ
L2なしの方が遅くなったと思われる。
■ このスレッドは過去ログ倉庫に格納されています