自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解三種Linux測(cè)試磁盤IO性能的方法總結(jié)

系統(tǒng) Linux 新聞
在磁盤測(cè)試中我們一般最關(guān)心的幾個(gè)指標(biāo)分別為:iops(每秒執(zhí)行的IO次數(shù))、bw(帶寬,每秒的吞吐量)、lat(每次IO操作的延遲)。

 概述

在磁盤測(cè)試中我們一般最關(guān)心的幾個(gè)指標(biāo)分別為:iops(每秒執(zhí)行的IO次數(shù))、bw(帶寬,每秒的吞吐量)、lat(每次IO操作的延遲)。

當(dāng)每次IO操作的block較小時(shí),如512bytes/4k/8k等,測(cè)試的主要是iops。

當(dāng)每次IO操作的block較大時(shí),如256k/512k/1M等,測(cè)試的主要是bw。

[[271692]]

一、dd命令

dd是linux自帶的磁盤讀寫工具,可用于測(cè)試順序讀寫。

一般而言,磁盤讀寫有兩種方式:BufferIO、DirectIO,DirectIO可以更好的了解純磁盤讀寫的性能。

1、語(yǔ)法

語(yǔ)法格式

  1. dd [option

dd指令選項(xiàng)詳解

  1. if=file:輸入文件名,缺省為標(biāo)準(zhǔn)輸入 
  2. of=file:輸出文件名,缺省為標(biāo)準(zhǔn)輸出 
  3. ibs=bytes:一次讀入 bytes 個(gè)字節(jié)(即一個(gè)塊大小為 bytes 個(gè)字節(jié)) 
  4. obs=bytes:一次寫 bytes 個(gè)字節(jié)(即一個(gè)塊大小為 bytes 個(gè)字節(jié)) 
  5. bs=bytes:同時(shí)設(shè)置讀寫塊的大小為 bytes ,可代替 ibs 和 obs 
  6. cbs=bytes:一次轉(zhuǎn)換 bytes 個(gè)字節(jié),即轉(zhuǎn)換緩沖區(qū)大小 
  7. skip=blocks:從輸入文件開(kāi)頭跳過(guò) blocks 個(gè)塊后再開(kāi)始復(fù)制 
  8. seek=blocks:從輸出文件開(kāi)頭跳過(guò) blocks 個(gè)塊后再開(kāi)始復(fù)制。(通常只有當(dāng)輸出文件是磁盤或磁帶時(shí)才有效) 
  9. count=blocks:僅拷貝 blocks 個(gè)塊,塊大小等于 ibs 指定的字節(jié)數(shù) 
  10. conv=ASCII:把EBCDIC碼轉(zhuǎn)換為ASCIl碼。 
  11. conv=ebcdic:把ASCIl碼轉(zhuǎn)換為EBCDIC碼。 
  12. conv=ibm:把ASCIl碼轉(zhuǎn)換為alternate EBCDIC碼。 
  13. conv=block:把變動(dòng)位轉(zhuǎn)換成固定字符。 
  14. conv=ublock:把固定位轉(zhuǎn)換成變動(dòng)位。 
  15. conv=ucase:把字母由小寫轉(zhuǎn)換為大寫。 
  16. conv=lcase:把字母由大寫轉(zhuǎn)換為小寫。 
  17. conv=notrunc:不截短輸出文件。 
  18. conv=swab:交換每一對(duì)輸入字節(jié)。 
  19. conv=noerror:出錯(cuò)時(shí)不停止處理。 
  20. conv=sync:把每個(gè)輸入記錄的大小都調(diào)到ibs的大?。ㄓ肗UL填充)。 

FLAGS參數(shù)說(shuō)明:

  1. append -append mode (makes sense only for output; conv=notrunc sug-gested) 
  2. direct:讀寫數(shù)據(jù)采用直接IO方式; 
  3. directory:讀寫失敗除非是directory; 
  4. dsync:讀寫數(shù)據(jù)采用同步IO; 
  5. sync:同上,但是針對(duì)是元數(shù)據(jù) 
  6. fullblock:堆積滿block(accumulate full blocks of input )(iflag only); 
  7. nonblock:讀寫數(shù)據(jù)采用非阻塞IO方式 
  8. noatime:讀寫數(shù)據(jù)不更新訪問(wèn)時(shí)間 

注意:指定數(shù)字的地方若以下列字符結(jié)尾乘以相應(yīng)的數(shù)字:b=512, c=1, k=1024, w=2, xm=number m,kB=1000,K=1024,MB=1000*1000,M=1024*1024,GB=1000*1000*1000,G=1024*1024*1024

2、dd測(cè)試DirectIO

  1. iops——寫測(cè)試 dd if=/dev/zero of=./a.dat bs=8k count=1M oflag=direct 
  2. iops——讀測(cè)試 dd if=./a.dat of=/dev/null bs=8k count=1M iflag=direct 
  3. bw——寫測(cè)試 dd if=/dev/zero of=./a.dat bs=1M count=8k oflag=direct 
  4. bw——讀測(cè)試 dd if=./a.dat of=/dev/null bs=1M count=8k iflag=direct 

 詳解三種Linux測(cè)試磁盤IO性能的方法總結(jié),值得收藏

3、 dd測(cè)試BufferIO

BufferIO主要出現(xiàn)在一些大文件讀寫的場(chǎng)景,由于使用內(nèi)存做Cache所以讀寫性能上和DirectIO相比,通常會(huì)高很多,尤其是讀,所以這個(gè)場(chǎng)景下我們僅關(guān)心bw即可。

用dd測(cè)試BufferIO的寫時(shí),需要增加一個(gè)conv=fdatasync,使用該參數(shù),在完成所有讀寫后會(huì)調(diào)用一個(gè)sync確保數(shù)據(jù)全部刷到磁盤上(期間操作系統(tǒng)也有可能會(huì)主動(dòng)flush),否則就是主要在測(cè)內(nèi)存讀寫了;

另外還有一個(gè)參數(shù)是oflag=dsync,使用該參數(shù)也是走的BufferIO,但卻是會(huì)在每次IO操作后都執(zhí)行一個(gè)sync。

通常conv=fdatasync更符合大文件讀寫的場(chǎng)景,所以這里以其作為參數(shù)進(jìn)行測(cè)試。

  1. bw——寫測(cè)試 dd if=/dev/zero of=./a.dat bs=1M count=8k conv=fdatasync 
  2. bw——讀測(cè)試 dd if=./a.dat of=/dev/null bs=1M count=8k 

詳解三種Linux測(cè)試磁盤IO性能的方法總結(jié),值得收藏

二、 fio工具

fio是專門用于測(cè)試磁盤IO的工具,與dd相比那是要強(qiáng)大非常多,它可以用于測(cè)試順序讀寫、隨機(jī)讀寫、順序混合讀寫、隨機(jī)混合讀寫,并且可以調(diào)整IO并發(fā)量,在測(cè)試完成后還會(huì)生成一份測(cè)試報(bào)告,相當(dāng)給力。

1、測(cè)試場(chǎng)景:

100%隨機(jī),100%讀, 4K

  1. fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100read_4k 

100%隨機(jī),100%寫, 4K

  1. fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100write_4k 

100%順序,100%讀 ,4K

  1. fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100read_4k 

100%順序,100%寫 ,4K

  1. fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100write_4k 

100%隨機(jī),70%讀,30%寫 4K

  1. fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=randrw_70read_4k 

三、iozone

IOzone is a filesystem benchmark tool. The benchmark generates and measures a variety of file operations. Iozone has been ported to many machines and runs under many operating systems.

iozone是一個(gè)文件系統(tǒng)的benchmark工具,可以測(cè)試不同的操作系統(tǒng)中文件系統(tǒng)的讀寫性能。 可以測(cè)試 Read, write, re-read,re-write, read backwards, read strided, fread, fwrite, random read, pread, mmap, aio_read, aio_write 等等不同的模式下的硬盤的性能。 測(cè)試的時(shí)候請(qǐng)注意,設(shè)置的測(cè)試文件的大小一定要大過(guò)你的內(nèi)存(最佳為內(nèi)存的兩倍大小),不然linux會(huì)給你的讀寫的內(nèi)容進(jìn)行緩存。會(huì)使數(shù)值非常不真實(shí)。

詳解三種Linux測(cè)試磁盤IO性能的方法總結(jié),值得收藏

例子:

  1. iozone -i 0 -i 2 -Rc -a -q 500k -g 1m -n 100k -b test_result.xls 

參數(shù)說(shuō)明如下:

  • -i 代表測(cè)試場(chǎng)景,0 代表運(yùn)行順序?qū)憸y(cè)試,1代表運(yùn)行隨機(jī)讀寫測(cè)試。還有很多場(chǎng)景可選,具體可見(jiàn)iozone -h說(shuō)明
  • -R 代表生成Excel報(bào)告文件。
  • -c 代表每次讀寫測(cè)試完畢都發(fā)送關(guān)閉連接的命令,主要用于測(cè)試NFS系統(tǒng)。
  • -a 代表自動(dòng)模式。
  • -q 代表最大的記錄大小。
  • -g 代表最大的文件大小。
  • -n 代表最小的文件大小。
  • -b 輸出的生成的Excel報(bào)告文件名字。
詳解三種Linux測(cè)試磁盤IO性能的方法總結(jié),值得收藏

生成報(bào)告如下:

詳解三種Linux測(cè)試磁盤IO性能的方法總結(jié),值得收藏
責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2010-06-13 15:22:21

Linux網(wǎng)絡(luò)測(cè)試

2025-04-24 10:05:51

2011-04-18 15:32:45

游戲測(cè)試測(cè)試方法軟件測(cè)試

2009-12-01 09:18:22

Linux版本

2013-08-15 14:10:24

云主機(jī)磁盤IO

2022-01-04 16:50:47

JavaScript圖片網(wǎng)站

2009-07-23 15:17:54

JDBC連接Acces

2010-12-22 13:17:47

Linux性能監(jiān)測(cè)磁盤IO

2011-11-08 21:51:43

Linux 監(jiān)控 IO

2019-08-22 09:57:10

ExpdpImpdpMOS

2021-07-05 06:57:06

VMware vSph虛擬機(jī)磁盤

2022-10-08 09:17:15

Linuxinxi

2009-07-30 16:27:33

C#比較時(shí)間

2022-08-19 11:17:09

Linux

2023-12-16 13:15:00

Linux服務(wù)器IP方法

2011-09-02 10:29:30

腳本Linuxperl

2024-05-20 09:19:45

請(qǐng)求合并容器

2019-08-30 17:24:41

microservic微服務(wù)

2014-10-24 14:44:25

量化網(wǎng)絡(luò)無(wú)線網(wǎng)絡(luò)性能測(cè)試

2009-07-08 12:56:32

編寫Servlet
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)