如何在Windows中監(jiān)視IO性能
本來準(zhǔn)備寫一篇windows中監(jiān)視IO性能的,后來發(fā)現(xiàn)好像可寫的內(nèi)容不多,windows在細(xì)節(jié)這方面做的不是那么的好,不過那些基本信息還是有的。
在Windows中監(jiān)視性能基本都用性能監(jiān)視器了,與IO性能相關(guān)的有兩個(gè)大類,一個(gè)是”LogicalDisk”,另外一個(gè)是”PhysicalDisk”,”LogicalDisk”更多的是用來監(jiān)視文件相關(guān)的IO性能,而”PhysicalDisk”則是用來監(jiān)視LUN或者是磁盤卷,下面就列舉下與前面所列舉的IO性能相關(guān)的計(jì)數(shù)器,具體的自己研究了:
單次IO大小
- Avg. Disk Bytes/Read
- Avg. Disk Bytes/Write
IO響應(yīng)時(shí)間
- Avg. Disk sec/Read
- Avg. Disk sec/Write
IOPS
- Disk Reads/sec
- Disk Writes/sec
- Disk Transfers/sec
IO吞吐率
- Disk Bytes/sec
- Disk Read Bytes/sec
- Disk Write Bytes/sec
理解iostat的各項(xiàng)輸出
在Linux中,我們執(zhí)行一個(gè)iostat -x命令,我們能看到如下的輸出
$iostat -x Linux 2.4.21-50a6smp (linux) 11/03/2009 avg-cpu: %user %nice %sys %iowait %idle 0.42 0.00 0.26 0.47 98.86 Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util hdc 0.01 0.00 0.00 0.00 0.07 0.00 0.03 0.00 24.48 0.00 4.90 4.57 0.00 hda 0.89 8.54 0.74 4.49 12.60 104.22 6.30 52.11 22.32 0.03 5.41 1.01 0.53
我們先列舉一下各個(gè)性能指標(biāo)的簡單說明。
- rrqm/s:每秒進(jìn)行merge的讀操作數(shù)目。
- wrqm/s:每秒進(jìn)行merge的寫操作數(shù)目。
- r/s:每秒完成的讀I/O設(shè)備次數(shù)。
- w/s:每秒完成的寫I/O設(shè)備次數(shù)。
- rsec/s:每秒讀扇區(qū)數(shù)。
- wsec/s:每秒寫扇區(qū)數(shù)。
- rkB/s:每秒讀K字節(jié)數(shù)。
- wkB/s:每秒寫K字節(jié)數(shù)。
- avgrq-sz:平均每次設(shè)備I/O操作的數(shù)據(jù)大小(扇區(qū))。
- avgqu-sz:平均I/O隊(duì)列長度。
- await:平均每次設(shè)備I/O操作的等待時(shí)間(毫秒)。
- svctm:平均每次設(shè)備I/O操作的服務(wù)時(shí)間(毫秒)。
- %util:一秒中有百分之多少的時(shí)間用于I/O操作,或者說一秒中有多少時(shí)間I/O隊(duì)列是非空的。
要理解這些性能指標(biāo)我們先看下圖
IO的執(zhí)行過程的各個(gè)參數(shù)
上圖的左邊是iostat顯示的各個(gè)性能指標(biāo),每個(gè)性能指標(biāo)都會(huì)顯示在一條虛線之上,這表明這個(gè)性能指標(biāo)是從虛線之上的那個(gè)讀寫階段開始計(jì)量的,比如說圖中的w/s從Linux IO scheduler開始穿過硬盤控制器(CCIS/3ware),這就表明w/s統(tǒng)計(jì)的是每秒鐘從Linux IO scheduler通過硬盤控制器的寫IO的數(shù)量。
結(jié)合上圖對(duì)讀IO操作的過程做一個(gè)說明,在從OS Buffer Cache傳入到OS Kernel(Linux IO scheduler)的讀IO操作的個(gè)數(shù)實(shí)際上是rrqm/s+r/s,直到讀IO請(qǐng)求到達(dá)OS Kernel層之后,有每秒鐘有rrqm/s個(gè)讀IO操作被合并,最終轉(zhuǎn)送給磁盤控制器的每秒鐘讀IO的個(gè)數(shù)為r/w;在進(jìn)入到操作系統(tǒng)的設(shè)備層(/dev/sda)之后,計(jì)數(shù)器開始對(duì)IO操作進(jìn)行計(jì)時(shí),最終的計(jì)算結(jié)果表現(xiàn)是await,這個(gè)值就是我們要的IO響應(yīng)時(shí)間了;svctm是在IO操作進(jìn)入到磁盤控制器之后直到磁盤控制器返回結(jié)果所花費(fèi)的時(shí)間,這是一個(gè)實(shí)際IO操作所花的時(shí)間,當(dāng)await與svctm相差很大的時(shí)候,我們就要注意磁盤的IO性能了;而avgrq-sz是從OS Kernel往下傳遞請(qǐng)求時(shí)單個(gè)IO的大小,avgqu-sz則是在OS Kernel中IO請(qǐng)求隊(duì)列的平均大小。
現(xiàn)在我們可以將iostat輸出結(jié)果和我們前面討論的指標(biāo)掛鉤了。
- 平均單次IO大小(IO Chunk Size) <=> avgrq-sz
- 平均IO響應(yīng)時(shí)間(IO Response Time) <=> await
- IOPS(IO per Second) <=> r/s + w/s
- 吞吐率(Throughtput) <=> rkB/s + wkB/s
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
windows10打開switchHost 提示無修改權(quán)限問題解決
這篇文章主要介紹了windows10打開switchHost,提示無修改權(quán)限問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09用戶態(tài)和內(nèi)核態(tài)-用戶線程和內(nèi)核態(tài)線程的區(qū)別
這篇文章主要介紹了用戶態(tài)和內(nèi)核態(tài)-用戶線程和內(nèi)核態(tài)線程的區(qū)別,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09制作純凈版的ghost系統(tǒng)的注意事項(xiàng)
制作純凈版的ghost系統(tǒng)的注意事項(xiàng)...2007-03-03Win10 系統(tǒng)下快速搭建mxnet框架cpu版本
這篇文章主要介紹了Win10 系統(tǒng)下快速搭建mxnet框架cpu版本,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10HarmonyOS開發(fā)基礎(chǔ)知識(shí)之Component和ComponentContainer區(qū)別(鴻蒙教程)
這篇文章主要介紹了HarmonyOS開發(fā)基礎(chǔ)知識(shí)之Component和ComponentContainer區(qū)別(鴻蒙教程),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09一鍵GHOST V8.3 Build 060425 硬盤版一鍵ghost使用方法說明[圖文詳細(xì)教程]
一鍵GHOST V8.3 Build 060425 硬盤版一鍵ghost使用方法說明[圖文詳細(xì)教程]...2007-01-01