[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: memmove,memset
神木です。
わりと脇道ですが、...
>X-Ml-Count: 2086
>だいたい メモリバンド幅+ α キャッシュ残留分ぐらいで止まるみたいで。
>だから PenII は、520MB/sec ぐらいなんでしょう。
> | Pentium II 450(?) -O3だと
> | memcpy : 268817 k byte/sec
> | memmove_fwd : 265251 k byte/sec
> | memmove_back : 264550 k byte/sec
> | memset : 341296 k byte/sec
> | xmemset : 338983 k byte/sec
> | xmemmove_fwd : 221238 k byte/sec
> | xmemmove_back: 235294 k byte/sec
PenII の↑は もしかしてオンチップの 2nd cache 速度を測ってません?
総転送量は 100kB だから 2nd cache に入りますよね?
ちなみにオンチップ 2nd cache が 256KB あって
あからさまに 2nd cache 測ってるだけの K6-III/400 だと
こんなん↓になりました。
memcpy : 492610 k byte/sec
memmove_fwd : 456621 k byte/sec
memmove_back : 520833 k byte/sec
xmemset : 769230 k byte/sec
xmemmove_fwd : 531914 k byte/sec
xmemmove_back: 490196 k byte/sec
転送量を 1MB にするとここまで落ちます:
memcpy : 117647 k byte/sec
memmove_fwd : 121951 k byte/sec
memmove_back : 77519 k byte/sec
memset : 142857 k byte/sec
xmemset : 135135 k byte/sec
xmemmove_fwd : 78740 k byte/sec
xmemmove_back: 75187 k byte/sec
--
神木一也
kensyu@y.email.ne.jp