1.dd命令(基本的測試磁碟io的命令)
dd if=/dev/sda of=test.flie bs=1m count=512 conv=fdatasync
if 讀取檔案位置
of 寫入檔案
bs 讀寫位元組單位
count 塊數
conv=fdatasync 保證讀寫到磁碟,而不是記憶體中。
echo 3 > /proc/sys/vm/drop_caches
清除快取。(注意在執行dd命令之前首先 執行此命令清除快取以確保執行不受快取影響)
2.hdparm
eg: hdparm -t /dev/sda
-t 測試記憶體的讀寫速度
-t 測試磁碟io的讀寫速度
dmesg | grep data 檢視當前磁碟資訊
bonni++ 與 iozone
需要手動安裝
rpm -vih rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
安裝完成後
yum -y install bonni++
yum -y install iozone
3.bonni++
bonnie++ -u root 以root使用者自動化執行
測試型別為順序讀寫檔案,隨機讀寫檔案,順序建立檔案,隨機建立檔案。
執行結果分析
-per chr- 以字元的形式讀寫
-block - 以塊的形式讀寫
-rewrite- 重寫
-seeks-- 尋道操作 (尋道是磁碟io中最耗時的乙個操作。一量刺頭找到磁軌,並且相應的扇區轉到磁頭下面,資料開始傳輸)
4.iozone
可以進行多執行緒併發測試io
iozone -l 1 -u 1 -r 16k -s 4096m
-l 最低程序數
-u 最大程序數
-r 記錄長度大小
-s 測試檔案大小 一般情況下設為記憶體的2倍
結果分析:
reverse readers 反向讀, 就是從檔案結尾處開始向前讀的操作
stride readers 步進讀,可以這樣理解,比如開始我讀4kb資料,然後再讀200kb的資料,這樣讀取不同大小的資料來實現一些特殊資料結構的測試。
LINUX下磁碟IO效能監測分析
linux下磁碟io效能監測分析 2011 08 16 18 10 23 標籤 效能監測分析 linux 磁碟io 休閒suse linux 這兩天發現一台測試用的伺服器經常負載很高,但cpu和記憶體消耗卻很少,很是奇怪,經過診斷發現是由於大容量的測試資料導致高併發下的磁碟io消耗比較大,由於快取是...
linux 高階IO 磁碟對映IO
儲存對映io 說明 在程序的棧中開闢一塊緩衝區將之與磁碟檔案相對應,對緩衝區的更改將自動寫入磁碟檔案,這樣就可以不在使用read和write的情況下執行io mmap函式 void mmap void addr,size t len,int prot,int flag,int filedes,off...
Linux 檔案IO整理
檔案描述符 檔案描述符是由核心中的程序產生的,程序控制塊 pcb 中存放了files struct結構體,該結構體中存放了若干個檔案描述符的結構體陣列fd array,陣列中的每乙個元素都是乙個file結構體用來儲存檔案的大小 建立時間 所有者 所屬組等資訊,通過該檔案描述服能夠找到對應的 檔案。檔...