- 266 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 23:16:32 ]
- >>265
そういうのをトイプログラムというのか。 今のCPUだと、floatならSIMDの方が速いと思うが、 float*1M個*2つ=8MBなので、L2キャッシュに乗らず、 単にメモリがネックになってるだけと思われる。 非SIMDでfloatの乗算をするのに、うまく最適化すれば Athlon系なら1クロック、Pentium系なら2クロックでできる。 それに対しメモリ帯域は1〜2byte/clkだから、 2つのfloatをロードし結果をストアするのに12byteのアクセスを するのに全然帯域が足りてない。 つまり、ここで必要なのはSIMDでなくプリフェッチ。 >>259のどのコードも、FP演算ユニットは遊んでいたと思われる。 もっとも、SIMDのロードやストアはアクセスの単位が大きいので、 メモリアクセスが効率化されて若干速くなる。 AとBの差はそれだろう。
|

|