2010/8/22:本掲示板は閲覧専用です。データが一部破損しておりますがご了承ください。
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃ホーム  
351 / 376 ツリー ←次へ | 前へ→

【73】メモリーテスト ライダー 03/3/28(金) 0:36

【74】Re:メモリーテスト ひよひよ 03/3/31(月) 13:23
【94】Re:メモリーテスト ライダー 03/4/27(日) 1:52
【95】Re:メモリーテスト ひよひよ 03/4/27(日) 23:13
【96】Re:メモリーテスト ライダー 03/4/27(日) 23:36
【97】Re:メモリーテスト ひよひよ 03/4/27(日) 23:59
【98】メモリ2枚仕様の06結果 ライダー 03/4/28(月) 0:45
【99】Re:メモリ2枚仕様の06結果 ひよひよ 03/4/28(月) 11:04

【74】Re:メモリーテスト
←back ↑menu ↑top forward→
 ひよひよ  - 03/3/31(月) 13:23 -

引用なし
パスワード
   これは実に難しい問題です...

ライダーさんが C 言語の心得があるかはわかりませんが、こんな感じのコードになっています。

Memory Read
------------------------------------------------------------
    DWORD *memory = new DWORD[MemSize / 4];
    DWORD LoopLimit = MemSize / 4;
    DWORD count = 0;
    for(;FlagLoop;){
        _asm{
            ALIGN 4
            mov ebx,memory
            mov ecx,LoopLimit
            test ecx,ecx
            jz exit
iter:
            mov eax, DWORD PTR [ebx+ecx*4-4] ;; U-1
            dec ecx ;; V-1
            jnz iter ;; U-2
            add    count,1
        }
    }
    delete [] memory;
--------------------------------------------

大体ですけど。FlagLoop は外部のスレッドが一定時間経過後変更します。

もっと良いコードがあるような気がしないでもないのですが...

あと、Cache 測定は

    _asm cld;
    for(;FlagLoop;){
        _asm{
            ALIGN 8
            add    count,1
            mov    edi,memory    ;測定用配列ポインタ
            mov    ecx,LoopLimit    ;転送回数
            rep    stosd;
        }
    }

って感じです。ASM がわからない方にはなんとことかサッパリかもしれませんが。

結局のところどのようなコードで測定するかが非常に重要になってくるわけです。ただ、AMD の CPU は TwinBank にしても CPU 自体は DDR なので DDR266 とそれだけでマッチするわけで、オンボードビデオとかやらない場合はあんまり効果はないのかも知れません...(当然未確認発言です)

他のベンチも色々試してみて結果を教えていただけると大変参考になります。

【94】Re:メモリーテスト
←back ↑menu ↑top forward→
 ライダー  - 03/4/27(日) 1:52 -

引用なし
パスワード
   すみません、プログラムはまるで駄目なんです。(^^;

nForce2の結果はどのソフトを使用しても結果が振るわなかった。
唯一のシングルバンク動作時との差が出たソフトが「memtest86」でした。
シングルバンクが500MB/sくらいに対して790MB/sくらいは出ます。
それと新たに出たi875PはCrystalMark06使用時に2317MB/sと言う結果が出ています。
Intelチップセット恐るべしと言った感じです。
ちなみに2317MB/sは155MHzにオーバークロックをしていたので、i845Dより20MHz程
高いクロックになります。
標準クロックでは、i845Dは920MB/S、i875Pは1590MB/sでした。
Reedのみの結果ですがご報告申し上げました。

【95】Re:メモリーテスト
←back ↑menu ↑top forward→
 ひよひよ  - 03/4/27(日) 23:13 -

引用なし
パスワード
   ▼ライダーさん:
>すみません、プログラムはまるで駄目なんです。(^^;
こちらこそすみません。なんでも、ソースで語るのは問題ありですね。でも、ソースコードと測定結果は一対一対応であり、機能的には全く同じように見えるメモリ速度測定ルーチンもソフトによってかなり違うようです...

>nForce2の結果はどのソフトを使用しても結果が振るわなかった。
>唯一のシングルバンク動作時との差が出たソフトが「memtest86」でした。
>シングルバンクが500MB/sくらいに対して790MB/sくらいは出ます。
デュアルバンクしても高速化できないようなコードなのかも知れませんね...

ところで、nForce2 にはオンボード VGA があるタイプもありますが、ライダーさんは別にビデオカードを利用していますか?オンボード VGA を使うとメモリテストの結果が下がるようです。(ビデオメモリとしても使っているため)

>それと新たに出たi875PはCrystalMark06使用時に2317MB/sと言う結果が出ています。
>Intelチップセット恐るべしと言った感じです。
>ちなみに2317MB/sは155MHzにオーバークロックをしていたので、i845Dより20MHz程
>高いクロックになります。
>標準クロックでは、i845Dは920MB/S、i875Pは1590MB/sでした。
>Reedのみの結果ですがご報告申し上げました。
報告ありがとうございます。

【96】Re:メモリーテスト
←back ↑menu ↑top forward→
 ライダー  - 03/4/27(日) 23:36 -

引用なし
パスワード
   私の使用しているのはnForce-ST&MCPの物です。
ビデオカードはAGPスロットに挿したGeForceを使っています。

念の為、非同期と同期の両方のテストを行いましたが、結果は大差なし(誤差程度)
そもそもがDDR400を搭載して動作が前提のSTなので、良い結果が出ないのかもしれないです。
でも、インテルのはちゃんと測れているかと思います。
08でのテストもほぼ同じ結果になりました。

【97】Re:メモリーテスト
←back ↑menu ↑top forward→
 ひよひよ  - 03/4/27(日) 23:59 -

引用なし
パスワード
   ▼ライダーさん:
>念の為、非同期と同期の両方のテストを行いましたが、結果は大差なし(誤差程度)
>そもそもがDDR400を搭載して動作が前提のSTなので、良い結果が出ないのかもしれないです。
>でも、インテルのはちゃんと測れているかと思います。
なるほど。

>08でのテストもほぼ同じ結果になりました。
キャッシュテスト以外は同じなので基本的に同じ結果になるかと思います。

Sandra は多分かなり適切な測定ができているように感じるので私もあんな感じにしたいのですがなかなか難しいのです。できることなら、理論値に近い値がでつつ、チップセットやバイオスのチューニングが影響するような感じだとうれしいんですけどねぇ。

私の Celeron 1G@1.12 環境では Sandra で 659MB/s、CrystalMark06 で 389MB/s ...といった感じです。Sandra は SSE 命令を使ったテストなので単純な比較はできません。ひょっとして CrystalMark も SSE を使ったテストを用意すればよいのかも?がんばってみます(自己完結)

【98】メモリ2枚仕様の06結果
←back ↑menu ↑top forward→
 ライダー  - 03/4/28(月) 0:45 -

引用なし
パスワード
   一応は下のが06での測定結果、i875PとnForce2の比較になります。
ほぼ同じレベル仕様かと思います。
やった後に両方のシステムクロックを合せるべきだと気が付いた次第です。
メモリのリードライトのスピードがなかなかに面白いですね。

●●●●     CrystalMark 0.6.19.55 2002/11/25 (C)ひよひよ   ●●●

【  CPU   】:Pentium 4 (Northwood)
【 クロック 】:2479.27(154.95x16.00) MHz x 1
【  CPUID  】:GenuineIntel F24
【 NameString 】:       Intel(R) Pentium(R) 4 CPU 1.60GHz
【   OS   】:WindowsXP [ 5.1 Build 2600 ]
【マザーボード】:ASUS P4C800 [ Intel 875P ]
【ビデオチップ】:NVIDIA GeForce4 Ti 4200 8X (NV28) [ 128 MB ]
【 メモリ環境 】:DDR SDRAM PC3200 CL3 [ 511 MB ]
【  HDD   】:ST380021A [ 80 GB ]
【 画面モード 】:1024x768 (32bit) Smoothing Normal

【CrystalMark 】: 42042
【  ALU   】: 5245
 Fibo : 1056  e : 2355 Eratos: 1834
【  FPU   】: 4506
 Pure : 1901 Rand : 1237  FFT : 1368
【  GDI   】: 6574
 Text : 2343 Square: 2243 Circle: 1988
【  MEM   】: 8223
 Read: 2317 MB/s Write: 1387 MB/s Read/Write: 1360 MB/s CacheR/W: 3159 MB/s
【  HDD   】: 6300
 Read: 33.9 MB/s ( 1738) Write: 37.0 MB/s ( 1895)
 RandomRead: 25.8 MB/s ( 1320) RandomWrite: 26.3 MB/s ( 1347)
【  Total  】: 2698
 Mandelbrot:  947  QuickSort: 1751
【 DirectDraw 】: 8496
 10: 618.4 FPS (  61) 100: 505.7 FPS (  505) 500: 280.0 FPS ( 1400)
 1000: 179.5 FPS ( 1795) 5000: 46.5 FPS ( 2325) 10000: 24.1 FPS ( 2410)

●●●●     CrystalMark 0.6.19.55 2002/11/25 (C)ひよひよ   ●●●

【  CPU   】:Athlon XP (Thoroughbred)
【 クロック 】:1497.27(166.36x9.00) MHz x 1
【  CPUID  】:AuthenticAMD 680
【 NameString 】:AMD Athlon(tm) XP
【   OS   】:WindowsXP [ 5.1 Build 2600 ]
【マザーボード】:ASUS A7N8X [ NVIDIA nForce 2 ST ]
【ビデオチップ】:NVIDIA GeForce3 (NV20) [ 64 MB ]
【 メモリ環境 】:DDR SDRAM PC2700 CL3 [ 511 MB ]
【  HDD   】:ST380011A [ 80 GB ]
【 画面モード 】:1024x768 (32bit) Smoothing Normal

【CrystalMark 】: 37690
【  ALU   】: 4228
 Fibo : 1233  e : 1555 Eratos: 1440
【  FPU   】: 5385
 Pure : 1612 Rand : 2191  FFT : 1582
【  GDI   】: 6490
 Text : 2518 Square: 2053 Circle: 1919
【  MEM   】: 4013
 Read:  687 MB/s Write:  843 MB/s Read/Write:  646 MB/s CacheR/W: 1837 MB/s
【  HDD   】: 8483
 Read: 49.6 MB/s ( 2541)    Write: 50.9 MB/s ( 2605)
 RandomRead: 33.1 MB/s ( 1697) RandomWrite: 32.0 MB/s ( 1640)
【  Total  】: 2681
 Mandelbrot: 1215  QuickSort: 1466
【 DirectDraw 】: 6410
 10: 444.9 FPS (  44) 100: 370.0 FPS (  370)  500: 207.5 FPS ( 1037)
 1000: 134.9 FPS ( 1349) 5000: 35.4 FPS ( 1770) 10000: 18.4 FPS ( 1840)

【99】Re:メモリ2枚仕様の06結果
←back ↑menu ↑top forward→
 ひよひよ  - 03/4/28(月) 11:04 -

引用なし
パスワード
   ▼ライダーさん:
nForce2 の結果
>> Read:  687 MB/s Write:  843 MB/s Read/Write:  646 MB/s CacheR/W: 1837 MB/s

うむぅぅぅ〜。不思議ですねぇ〜。
Intel 系では Write 速度が Read 速度のちょうど半分くらいになっているわけですが、AMD 系ではむしろ Write が高速... でも、これは本当のメモリ性能というよりは、アセンブリで書かれた測定コードを CPU が実行する効率に影響されているような気もします。

これを機に memtest86 を勉強してみようかと思います。ソースもあることですし。
ただ、memtest86 は GPL なので扱いには気をつけないと...

351 / 376 ツリー ←次へ | 前へ→
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃ホーム  
ページ:  ┃  記事番号:   
51982
(SS)C-BOARD v3.8(とほほ改ver2.1) is Free