歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux下硬盤讀寫速度測試

Linux下硬盤讀寫速度測試

日期:2017/2/28 14:38:19   编辑:Linux教程

讀取速度可以使用命令:hdparm –t 設備名(/dev/sda1)

寫入速度使用命令:time dd if=/dev/zero of=/tmp/test.dat bs=1G count=1

測試磁盤的讀寫IO速度

有時候我們在做維護的時候,總會遇到類似於IO特別高,但不能判定是IO瓶頸還是軟件參數設置不當導致熱盤的問題.這時候通常希望能知道磁盤的讀寫速度,來進行下一步的決策.

下面是兩種測試方法:
(1)使用hdparm命令
這是一個是用來獲取ATA/IDE硬盤的參數的命令,是由早期Linux IDE驅動的開發和維護人員 Mark Lord開發編寫的( hdparm has been written by Mark Lord <[email protected]>, the primary developer and maintainer of the (E)IDE driver for Linux, with suggestions from many netfolk).該命令應該也是僅用於Linux系統,對於UNIX系統,ATA/IDE硬盤用的可能比較少,一般大型的系統都是使用磁盤陣列的.
使用方法很簡單
# hdparm -Tt /dev/sda

/dev/sda:
Timing cached reads: 6676 MB in 2.00 seconds = 3340.18 MB/sec
Timing buffered disk reads: 218 MB in 3.11 seconds = 70.11 MB/sec

可以看到,2秒鐘讀取了6676MB的緩存,約合3340.18 MB/sec;
在3.11秒中讀取了218MB磁盤(物理讀),讀取速度約合70.11 MB/sec

(2)使用dd命令
這不是一個專業的測試工具,不過如果對於測試結果的要求不是很苛刻的話,平時可以使用來對磁盤的讀寫速度作一個簡單的評估.
另外由於這是一個免費軟件,基本上×NIX系統上都有安裝,對於Oracle裸設備的復制遷移,dd工具一般都是首選.
在使用前首先了解兩個特殊設備
/dev/null 偽設備,回收站.寫該文件不會產生IO
/dev/zero 偽設備,會產生空字符流,對它不會產生IO
測試方法:
a.測試磁盤的IO寫速度
# time dd if=/dev/zero of=/test.dbf bs=8k count=300000
300000+0 records in
300000+0 records out
10.59s real 0.43s user 9.40s system
# du -sm /test.dbf
2347 /test.dbf

可以看到,在10.59秒的時間裡,生成2347M的一個文件,IO寫的速度約為221.6MB/sec;
當然這個速度可以多測試幾遍取一個平均值,符合概率統計.

b.測試磁盤的IO讀速度
# df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
19214 9545 8693 53% /
/dev/sda1 99 13 82 14% /boot
none 506 0 506 0% /dev/shm

# time dd if=/dev/mapper/VolGroup00-LogVol00 of=/dev/null bs=8k
2498560+0 records in
2498560+0 records out
247.99s real 1.92s user 48.64s system
上面的試驗在247.99秒的時間裡讀取了19214MB的文件,計算下來平均速度為77.48MB/sec

c.測試IO同時讀和寫的速度
# time dd if=/dev/sda1 of=test.dbf bs=8k
13048+1 records in
13048+1 records out
3.73s real 0.04s user 2.39s system
# du -sm test.dbf
103 test.dbf

上面測試的數據量比較小,僅作為參考.

相比兩種方法:
前者是linux上專業的測試IDE/ATA磁盤的工具,但是使用范圍有局限性;(此試驗僅僅使用了測試磁盤IO的參數,對於其他參數及解釋參考man手冊)
後者可以通用,但不夠專業,也沒有考慮到緩存和物理讀的區分,測試的數據也是僅作參考,不能算是權威.

Copyright © Linux教程網 All Rights Reserved