在Linux底下, 硬碟讀寫效能測試!

ST-15K.3

我是恐龍..
已加入
9/18/03
訊息
21,571
互動分數
26
點數
48
年齡
45
網站
www.coolaler.com
感謝分享
 

s900221

高級會員
已加入
9/27/03
訊息
873
互動分數
0
點數
0
亂入的, 有圖有真相 :P
hdparm.PNG

這顆硬碟是...

1個6GB的檔案@NTFS -- VMware底下測的啦 :lol:
實體硬碟是2顆Seagate 80GB 7200.7 NCQ組成的Raid0,數據起伏大是因為我都沒關掉其他程式直接開VMware測的,所以當其他程式在存取記憶體和硬碟的時候一定會對性能有很大影響的 B)

想不到VMware的磁碟性能還不差,即使在NTFS上用檔案當作硬碟,最高還能有將近6成的性能,不錯了 :P





早上補的:
剛剛好奇心驅使下,拿Gentoo minimal LiveCD開機測硬碟(為什麼用Gentoo? 因為它只有53MB, 小巧阿XD", 而且剛好我硬碟裡有iso),數據貼出來給大家做參考

測試系統
  • Athlon64 3200+
  • 技嘉K8N Ultra-SLI
  • 創見512MB DDR400*2 雙通道
ST3120026A Barracuda 7200.7 Plus 120 GB Ultra ATA/100 7200 RPM 8.5 ms avg DPC
代碼:
# hdparm -Tt /dev/hda

/dev/hda:
Timing cached reads:  3472 MB in 2.00 seconds = 1735.40 MB/sec
Timing buffered disk reads: 168 MB in 3.03 seconds = 55.42 MB/sec
ST380817AS Barracuda 7200.7 SATA NCQ 80 GB SATA 1.5Gb/s 7200 RPM 8.5 ms avg DPC, 接在nForce4的SATA通道上
代碼:
# hdparm -Tt /dev/sda

/dev/sda:
Timing cached reads:  3316 MB in 2.00 seconds = 1658.25 MB/sec
Timing buffered disk reads: 172 MB in 3.03 seconds = 56.81 MB/sec

我的結論是...
不管用SATA或是PATA,7200.7的表現好像大致相同,當然NCQ不會在循序讀取上提高效益,所以也看不出NCQ的好處。
IDE那顆我有測兩次,第二次的buffered reads是54.99MB/s。
SATA的我是兩顆各測兩次,四個buffered reads都是56.81MB/s <= 害我有點驚訝,總覺得每次多少該有點誤差,結果竟然都一樣。
當然cache reads速度不一樣, 不過差別都不大。

順帶提的:
這兩顆硬碟Raid 0我以前用Linux開機測過,buffered disk reads大概10xMB/s吧 :lol: 現在因為上面有Windows,而且你們也知道,主機板上這是軟體Raid,我要把兩顆硬碟都拿來做Raid就得把Windows分割區刪除了,所以暫時沒辦法測。

cached reads是讀取Linux cache,也就是直接讀記憶體的;buffered disk reads才是讀硬碟。這是寫給不知道的人看。
 

s900221

高級會員
已加入
9/27/03
訊息
873
互動分數
0
點數
0
Originally posted by a843433@Aug 21 2005, 12:29 PM
Seagate 200G, IDE介面, 8MB Buffeers 7200轉, DMA133 模式. 型號為 Model=ST3200822A, FwRev=3.01, SerialNo=3LJ1FYDX
我剛剛在Seagate網站看,找該型號的資料如下:
  • ST3200822A Barracuda 7200.7 Plus 200 GB Ultra ATA/100 7200 RPM 8.5 ms avg DPC
因為我印象中Seagate好像沒有出過ATA133的硬碟,想確認一下。
 

a843433

進階會員
已加入
5/19/05
訊息
322
互動分數
0
點數
0
Originally posted by s900221+Aug 24 2005, 07:19 AM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>QUOTE (s900221 @ Aug 24 2005, 07:19 AM)</td></tr><tr><td id='QUOTE'> <!--QuoteBegin-a843433@Aug 21 2005, 12:29 PM
Seagate 200G, IDE介面, 8MB Buffeers 7200轉, DMA133 模式. 型號為 Model=ST3200822A, FwRev=3.01, SerialNo=3LJ1FYDX
我剛剛在Seagate網站看,找該型號的資料如下:
  • ST3200822A Barracuda 7200.7 Plus 200 GB Ultra ATA/100 7200 RPM 8.5 ms avg DPC
因為我印象中Seagate好像沒有出過ATA133的硬碟,想確認一下。 [/b][/quote]
啊~~ 筆誤 ;oq; 真是抱歉, 小弟打錯報告了 :PPP:



感謝指正, 謝謝 ;lik;
--------
利用hdparm 查證結果, 是只有跑在udma5模式而已.
代碼:
# hdparm -i /dev/hda

/dev/hda:

 Model=ST3200826A, FwRev=3.02, SerialNo=3ND0BF9T
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=unknown, BuffSize=8192kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes: pio0 pio1 pio2 pio3 pio4
 DMA modes: mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: device does not report version:

 * signifies the current active mode

不過, 小弟另外一顆硬碟的資料就很怪, 看不太懂........
代碼:
# hdparm -i /dev/hdb

/dev/hdb:

 Model=ST3200822A, FwRev=3.01, SerialNo=3LJ1FYDX
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=unknown, BuffSize=8192kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes: pio0 pio1 pio2 pio3 pio4
 DMA modes: mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: ATA/ATAPI-6 T13 1410D revision 2:

 * signifies the current active mode
ATAPI-6 ? 這是啥定義?
 

a843433

進階會員
已加入
5/19/05
訊息
322
互動分數
0
點數
0
小弟斗膽提出幾點假設:
  • 1. Nvidia的 nForce Professional 2200 (CK8-04) 的輸出端速度會彼此牽制(不知道其他朋友有沒有發生這樣的情況? 或者是這張泰安板子的特例? ). SATA-II 裝置與 SATA-I 共接的時候(例如, 有四個埠, 隨便接其中兩個), 都會讓傳輸速度降低為 SATA-I, 也就是150MB/S的能力. 由此可知, 如果介面卡或者主機板介面上面, 沒有緩衝or中介IC的話, 混插的情況只是讓傳輸速度往低的那邊妥協, 而不是不會互相影響.

    2. SATA-II的傳輸能力與 SCSI U320接近. 從小弟與各位網友的數值報告中, 可以看到, 例如 小弟所測得值:
    代碼:
    Timing cached reads:  3648 MB in 2.00 seconds = 1823.37 MB/sec
    事實上是接近U320 組 RAID 5所得值:
    代碼:
     Timing cached reads:  3856 MB in 2.00 seconds = 1927.33 MB/sec
    . 注意, 這是組了RAID 5之後的數值, 不代表 U320, 15000轉硬碟只有這樣子的能力!

    3. RAID 0 的確可以讓傳輸能力有相當程度的提升(s900221 所測圖案)
    hdparm.PNG

    (抱歉, 借我盜連一下^^)


    在這裡面可以看到, 傳輸頻寬可以大幅度的提升 ( 以小弟的與s900221 前輩的數值來比較, 18xx --> 28xx MB/S ), 但不是直接兩倍(由 s900221 前輩的數值來看, 約 1.5 ), 讀寫數值會相反的大幅度降低(快一倍的差距).



    4. 一萬轉的WD暴龍的讀寫時間在這樣的測試中是最佳的 (62.16 MB/sec), 如果要提升作業系統效能, 還是要這種高貴的硬碟來提升速度才行...


    5. 組RAID, 真的會讓硬碟效能降低釵h, 降低的幅度與所使用的介面卡有關.
有錯誤的地方, 還請各位不吝指正, 謝謝 ;lik;
 

s900221

高級會員
已加入
9/27/03
訊息
873
互動分數
0
點數
0
Originally posted by a843433@Aug 24 2005, 09:01 AM
在這裡面可以看到, 傳輸頻寬可以大幅度的提升 ( 以小弟的與s900221 前輩的數值來比較, 18xx --> 28xx MB/S ), 但不是直接兩倍(由 s900221 前輩的數值來看, 約 1.5 ), 讀寫數值會相反的大幅度降低(快一倍的差距).
那個...可是那張是在VMware底下的...
 

a843433

進階會員
已加入
5/19/05
訊息
322
互動分數
0
點數
0
近日,買了片DFI的無極主機板,順便安裝FC4 for i386版,搭配一開始就登場的 WD 36G 萬轉 SATA 硬碟。其數值如下:
代碼:
# hdparm -Tt /dev/sda

/dev/sda:
 Timing cached reads:   4312 MB in  2.00 seconds = 2154.17 MB/sec
 Timing buffered disk reads:  188 MB in  3.02 seconds =  62.22 MB/sec

與原本在2895上得測試結果:
參賽者一號
WD 36G, 一萬轉硬碟, 8MB Buffers, 使用Onboard的Nvidia晶片組, SATA I 模式
代碼:
# hdparm -Tt /dev/sda
/dev/sda: 
Timing cached reads: 2172 MB in 2.00 seconds = 1084.00 MB/sec 
Timing buffered disk reads: 188 MB in 3.02 seconds = 62.16 MB/sec


可以看到,讀取的效能有某種程度的差異。但,這主機板有一個缺點,因為其SATA CONTROLLOR的部份是使用兩組 Silicon Image SiI 3112 所合併成的,而此晶片組的缺點是在存取時會大量增加 CPU LOADING (從 Linux 上來觀察,大約 35%~60%不等),此特點在這主機板上也可以看到....

---
該無極主機板相關資訊,請見風大的介紹:

http://forum.coolaler.com/showthread.php?t=117050
 
▌延伸閱讀