Windows性能監(jiān)控工具-xperf

關(guān)鍵詞:

Windows性能監(jiān)控xperfKDV1000

摘要:

Xperf是一款系統(tǒng)級工具很澄,是產(chǎn)品套件Windows性能工具包(Windows Performance Toolkit够掠,WPT)的一部分,而WPT則屬于微軟軟件開發(fā)包(Microsoft Software Development Kit慧耍,SDK)酥筝。Xperf是Windows事件跟蹤系統(tǒng)(Event Tracing for Windows,ETW)的補(bǔ)充娇钱。ETW則是服務(wù)器操作系統(tǒng)的一個(gè)內(nèi)置組件悦施,提供詳細(xì)的系統(tǒng)性能和系統(tǒng)數(shù)據(jù)并扇。

補(bǔ)充:WPT包含三款工具(xperf、xperfview抡诞、GPU):

Xperf:使用CMD命令行工作穷蛹。包括性能監(jiān)控開始,收集昼汗,和打開等肴熏。

XperfView:這是為Xperf的采樣文件可視化顯示的工具,可以繪制各種資源使用曲線顷窒,并用任

意方式組織數(shù)據(jù)蛙吏,排序。

GPUView:不做介紹鞋吉。

案例描述

我們公司有KDV1000和PCMT都是基于windows系統(tǒng)的鸦做,但是對于windows系統(tǒng)的監(jiān)控工具卻不多,有的工具不權(quán)威谓着,有的工具又有他的局限性泼诱,比如工具本身的資源占用情況和監(jiān)控時(shí)間等;下面我想向大家介紹xperf是如何監(jiān)控系統(tǒng)資源赊锚。

1案例分析

對于KDV1000和PCMT這兩款在windows下運(yùn)行的產(chǎn)品治筒,在編高能力級別的視頻時(shí)耗用資源較高,比如KDV1000在第一路編720P/30HP舷蒲,解1080P/30HP耸袜,第二路解H264/H239/SXGA@5HP時(shí),耗用CPU竟達(dá)90%牲平。

xperf工具有以下幾個(gè)特征:

1.工具本身具有權(quán)威性句灌,而且是免費(fèi)的;

2.工具本身耗用資源少(只要是監(jiān)控肯定會有資源耗用)欠拾;

3.工具能長時(shí)間監(jiān)控,有專業(yè)的圖形分析骗绕;

4.支持命令行使用藐窄,方便結(jié)合其他腳本使用;

所以xperf是非常值得推廣的酬土。

2解決過程

2.1xperf安裝

安裝WPT之前首先安裝Microsoft

.NET Framework 4荆忍。

文件請自行到網(wǎng)上下載。PS:注意查看系統(tǒng)是32位還是64位的,安裝全部選擇默認(rèn)就可以刹枉。

2.2xperf使用

對于xperf的使用先介紹給例子:

以管理員權(quán)限打開DOS叽唱,輸入以下命令:

xperf –on base

xperf –d trace.etl

xperf trace.etl

第一條命令會收集多個(gè)種類的內(nèi)核事件,base是(PROC_THREAD微宝、LOADER棺亭、DISK_IO、HARD_FAULTS蟋软、PROFILE和MEMIFO)所有內(nèi)核事件的集合镶摘,并將數(shù)據(jù)記錄到一個(gè)名為kernel.etl的日志文件中,這個(gè)文件一般在C盤根目錄下。

第二條命令就是將內(nèi)核事件收集到trace.etl這個(gè)文件中岳守。

第三條命令就是使用xperfview這個(gè)工具將trace.etl使用圖形化工具展現(xiàn)出來。

下面引出以下幾個(gè)問題:

內(nèi)核事件有哪些?

如何使用xperfview朱盐?

問題1:我們可以使用xperf –providers k獲得內(nèi)核事件列表台囱,以及不同組所代表了不同內(nèi)核事件的集合,內(nèi)核事件列表如下文:

C:\windows\system32>xperf -providers k

Kernel Flags:

PROC_THREAD:記錄進(jìn)程的創(chuàng)建和刪除

LOADER:記錄內(nèi)核模式和使用模式加載和卸載事件

PROFILE:捕獲CPU采樣的配置文件信息

CSWITCH:記錄上下文切換()

COMPACT_CSWITCH:緊湊的上下文切換

DISPATCHER: CPU調(diào)度器

DPC: DPC事件

INTERRUPT:打斷事件

SYSCALL:系統(tǒng)調(diào)用

PRIORITY:優(yōu)先級變更事件

SPINLOCK:自旋鎖的碰撞

ALPC:高級本地過程調(diào)用

PERF_COUNTER:進(jìn)程項(xiàng)的性能計(jì)數(shù)器

DISK_IO: Disk I/O

DISK_IO_INIT: Disk I/O初始化

FILE_IO:文件系統(tǒng)操作的結(jié)束時(shí)間和結(jié)果

FILE_IO_INIT:文件操作系統(tǒng)(create/open/close/read/write)

HARD_FAULTS:硬件分頁錯(cuò)誤

FILENAME: FileName (e.g.,FileName create/delete/rundown)

SPLIT_IO:分裂I/O

REGISTRY:注冊表的更改記錄

DRIVERS:驅(qū)動(dòng)事件

POWER:電源管理事件

NETWORKTRACE:網(wǎng)絡(luò)事件(e.g., tcp/udp send/receive)

VIRT_ALLOC:虛擬分配保留和釋放

MEMINFO:內(nèi)存列表信息

ALL_FAULTS:所有的頁面故障譬重,包括硬上寫拒逮,復(fù)制,需求零故障等

CONTMEMGEN:連續(xù)的內(nèi)存生成器

POOL:跟蹤池

CPU_CONFIG: NUMA拓?fù)浣Y(jié)構(gòu)害幅,處理器組和處理器索引號映射消恍。默認(rèn)情況下,它始終處于啟用狀態(tài)以现。

Kernel Groups:

Base:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+PROFILE+MEMINFO

Diag:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+DPC+INTERRUPT+CSW

ITCH+PERF_COUNTER+COMPACT_CSWITCH

DiagEasy:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+DPC+INTERRUPT+CSW

ITCH+PERF_COUNTER

Latency:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+DPC+INTERRUPT+CSW

ITCH+PROFILE

FileIO:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+FILE_IO+FILE_IO_I

NIT

IOTrace:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+CSWITCH

ResumeTrace:PROC_THREAD+LOADER+DISK_IO+HARD_FAULTS+PROFILE+POWER

SysProf:PROC_THREAD+LOADER+PROFILE

Network:PROC_THREAD+LOADER+NETWORKTRACE

總結(jié):收集內(nèi)核事件的通用命令公式如下:

Xperf -on [Kernel Flags| Kernel Groups]+ [KernelFlags| Kernel Groups]+…

問題2:如何使用xperfview

你可以使用命令將xperfview打開也可以直接找到程序安裝目錄將其打開狠怨。(直接在cmd中直接輸入xperfview)

打開你保存好的etl文件,如下圖:

監(jiān)控圖

這三個(gè)圖分別是CPU使用率邑遏,進(jìn)程的CPU使用率佣赖,線程的CPU使用率隨著時(shí)間的變化而變化的趨勢圖,那么我們可以對上圖進(jìn)行如下操作:

1.在圖上點(diǎn)擊右鍵選擇Summary Table查看CPU使用列表詳情记盒。

詳情

備注:硬盤讀寫速度不是很好的話憎蛤,建議大家使用Simple Summary Table。

詳圖

打開的列表詳情包含了在監(jiān)控性能的這段時(shí)間內(nèi)整個(gè)系統(tǒng)的平均cpu使用率以及每個(gè)進(jìn)程使用的平均CPU率以及改進(jìn)程下調(diào)用模塊的CPU使用率纪吮。

2.我們還可以對相應(yīng)的曲線進(jìn)行配色如圖俩檬,只需雙擊下圖的CPU#中的CPU 0,就會彈出Color框碾盟,點(diǎn)擊相應(yīng)的顏色后即可:

color選擇

3.可以通過拉選范圍對圖形的局部進(jìn)行分析可以做如下操作:放大選擇范圍棚辽,克隆選擇范圍,放棄放大冰肴,全選屈藐,選擇指定范圍

select zoom

4.選擇指定顯示的參數(shù)如下圖榔组,只顯示4核CPU中的CPU1和CPU3

CPU select

5.選擇任意兩張圖表合并對比,這樣就能相互聯(lián)系的看待問題联逻;

Step1:右擊圖表搓扯,選擇Overlay Graph然后選擇需要合并的父項(xiàng)及子項(xiàng)。

Overlay Graph

Step2:合并后如下圖所示:

Merge

2.3xperf使用中遇到的問題

Q1:Xperf支持的操作系統(tǒng):

支持WINDOWS

VISTA, Windows Server 2008以及更高的操作系統(tǒng)包归,由于歷史遺留問題锨推,WINDOWS XP和WINDOWS Server 2003對WPT的支持不好,內(nèi)核在開發(fā)的時(shí)候沒有考慮到未來的程序性能調(diào)試的復(fù)雜度箫踩,所以xperf不支持WINDOWS XP和WINDOWS Server 2003爱态。

Q2:Xperf收集數(shù)據(jù)時(shí),一定要注意文件大小境钟,而且讀etl文件時(shí)對硬盤的讀寫速度要求也比較高锦担,綜合以上,實(shí)踐中得出的建議監(jiān)控時(shí)間為1小時(shí)慨削,那很多時(shí)候拷機(jī)項(xiàng)的時(shí)間都是好幾個(gè)小時(shí)的洞渔,這時(shí)候我們可以通過批處理來完成連續(xù)監(jiān)控,且每個(gè)文件都收集1小時(shí)的缚态,然而批處理沒有sleep的用法磁椒,但這也很容易解決我們可以在批處理中調(diào)用VBS,VBS文件中簡單的寫上一句WScript.Sleep 3600即可玫芦。

Q3:由于數(shù)據(jù)收集你的硬盤也很有可能會爆浆熔,所以在監(jiān)控之前先預(yù)估下硬盤大小是否支持。

3解決結(jié)果

使用Xperf工具很專業(yè)的解決了我們PCMT以及KDV1000的CPU監(jiān)控需求桥帆,為我們基于WINDOWS上的終端提供了保障医增。

4總結(jié)

難能可貴的是該工具的權(quán)威性,專業(yè)性老虫,穩(wěn)定性還有它是免費(fèi)的叶骨。所以很希望推薦大家使用這款工具。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末祈匙,一起剝皮案震驚了整個(gè)濱河市忽刽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌夺欲,老刑警劉巖跪帝,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異些阅,居然都是意外死亡歉甚,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進(jìn)店門扑眉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來纸泄,“玉大人,你說我怎么就攤上這事腰素∑覆茫” “怎么了?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵弓千,是天一觀的道長衡便。 經(jīng)常有香客問我,道長洋访,這世上最難降的妖魔是什么镣陕? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮姻政,結(jié)果婚禮上呆抑,老公的妹妹穿的比我還像新娘。我一直安慰自己汁展,他們只是感情好鹊碍,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著食绿,像睡著了一般侈咕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上器紧,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天耀销,我揣著相機(jī)與錄音,去河邊找鬼铲汪。 笑死熊尉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的桥状。 我是一名探鬼主播帽揪,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼辅斟!你這毒婦竟也來了转晰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤士飒,失蹤者是張志新(化名)和其女友劉穎查邢,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體酵幕,經(jīng)...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡扰藕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了芳撒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片邓深。...
    茶點(diǎn)故事閱讀 39,711評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡未桥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出芥备,到底是詐尸還是另有隱情冬耿,我是刑警寧澤,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布萌壳,位于F島的核電站亦镶,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏袱瓮。R本人自食惡果不足惜缤骨,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望尺借。 院中可真熱鬧绊起,春花似錦、人聲如沸褐望。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瘫里。三九已至实蔽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間谨读,已是汗流浹背局装。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留劳殖,地道東北人铐尚。 一個(gè)月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像哆姻,于是被迫代替她去往敵國和親宣增。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評論 2 353

推薦閱讀更多精彩內(nèi)容