|
性能分析
監(jiān)視內存計數器
要監(jiān)視內存不足的狀況,請從以下的對象計數器開始: 內存信息: Memory\ Available Bytes Memory\ Pages/sec Memory\ Available Bytes 如果您懷疑有內存泄露,請監(jiān)視 Memory\Available Bytes 和 Memory\ Committed Bytes,以觀察內存行為,并監(jiān)視您認為可能在泄露內存的進程的 Process\ Private Bytes、Process\ Working Set 和Process\ Handle Count。如果您懷疑是內核模式進程導致了泄露, 則還應該監(jiān)視 Memory\ Pool Nonpaged Bytes、Memory\ Pool Nonpaged Allocs 和 Process(process_name)\ Pool Nonpaged Bytes。 CPU信息: Processor\ % Processor Time 獲得處理器使用情況。 也可以選擇監(jiān)視 Processor\ % User Time 和 % Privileged Time 以獲得詳細信息。 Server Work Queues\ Queue Length 計數器會顯示出處理器瓶頸。隊列長度持續(xù)大于 4 則表示可能出現處理器擁塞。 System\ Processor Queue Length 用于瓶頸檢測 通過使用 Process\ % Processor Time 和 Process\ Working Set Process\ % Processor Time過程的所有線程在每個處理器上的處理器時間總和。 硬盤信息: Physical Disk\ % Disk Time Physical Disk\ Avg.Disk Queue Length 例如,包括 Page Reads/sec 和 % Disk Time 及 Avg.Disk Queue Length。如果頁面讀取操作速率很低,同時 % Disk Time 和 Avg.Disk Queue Length的值很高,則可能有磁盤瓶徑。但是,如果隊列長度增加的同時頁面讀取速率并未降低,則內存不足。 Physical Disk\ % Disk Time Physical Disk\ Avg.Disk Queue Length 例如,包括 Page Reads/sec 和 % Disk Time 及 Avg.Disk Queue Length。如果頁面讀取操作速率很低,同時 % Disk Time 和 Avg.Disk Queue Length的值很高,則可能有磁盤瓶徑。但是,如果隊列長度增加的同時頁面讀取速率并未降低,則內存不足。 請觀察 Processor\ Interrupts/sec 計數器的值,該計數器測量來自輸入/輸出 (I/O) 設備的服務請求的速度。如果此計數器的值明顯增加,而系統(tǒng)活動沒有相應增加,則表明存在硬件問題。 Physical Disk\ Disk Reads/sec and Disk Writes/sec Physical Disk\ Current Disk Queue Length Physical Disk\ % Disk Time LogicalDisk\ % Free Space 測試磁盤性能時,將性能數據記錄到另一個磁盤或計算機,以便這些數據不會干擾您正在測試的磁盤。 可能需要觀察的附加計數器包括 Physical Disk\ Avg.Disk sec/Transfer、Avg.Disk Bytes/Transfer,和 Disk Bytes/sec。 Avg.Disk sec/Transfer 計數器反映磁盤完成請求所用的時間。較高的值表明磁盤控制器由于失敗而不斷重試該磁盤。這些故障會增加平均磁盤傳送時間。對于大多數磁盤,較高的磁盤平均傳送時間是大于 0.3 秒。 也可以查看 Avg.Disk Bytes/Transfer 的值。值大于 20 KB 表示該磁盤驅動器通常運行良好;如果應用程序正在訪問磁盤,則會產生較低的值。例如,隨機訪問磁盤的應用程序會增加平均 Disk sec/Transfer 時間,因為隨機傳送需要增加搜索時間。 Disk Bytes/sec 提供磁盤系統(tǒng)的吞吐率。 決定工作負載的平衡 要平衡網絡服務器上的負載,需要了解服務器磁盤驅動器的繁忙程度。使用 Physical Disk\ % Disk Time 計數器,該計數器顯示驅動器活動時間的百分比。如果 % Disk Time 較高(超過 90%),請檢查 Physical Disk\ Current Disk Queue Length 計數器以查看正在等待磁盤訪問的系統(tǒng)請求數量。等待 I/O 請求的數量應當保持在不大于組成物理磁盤的主軸數的 1.5 到 2 倍。 盡管廉價磁盤冗余陣列 (RAID) 設備通常有多個主軸,大多數磁盤有一個主軸。硬件 RAID 設備在“系統(tǒng)監(jiān)視器”中顯示為一個物理磁盤;通過軟件創(chuàng)建的 RAID 設備顯示為多個驅動器(實例)??梢员O(jiān)視每個物理驅動器(而不是 RAID)的 Physical Disk 計數器,也可以使用 _Total 實例來監(jiān)視所有計算機驅動器的數據。 使用 Current Disk Queue Length 和 % Disk Time 計數器來檢測磁盤子系統(tǒng)的瓶頸。如果 Current Disk Queue Length 和 % Disk Time 的值始終較高,可以考慮升級磁盤驅動器或將某些文件移動到其他磁盤或服務器。 影響服務器性能的四個主要子系統(tǒng):
什么是性能計數器?
應用舉例:
由于每個人實際操作的應用程序不可能一樣,比如有些人要運行3DMAX、Photoshop等這樣的大型程序,而有些人可能只是打打字、玩些小游戲,所以對虛擬內存的要求并不相同,于是我們就要因地制宜地精確設置虛擬內存空間的數值。 ①先將虛擬內存自定義的“初始大小”、“最大值”設為兩個相同的數值,比如500MB; ②然后依次打開“控制面板→管理工具→性能”,在出現的“性能”對話框中,展開左側欄目中的“性能日志和警報”,選中其下的“計數器日志”,在右側欄目中空白處點擊右鍵,選擇右鍵菜單中的“新建日志設置”選項; ③在彈出的對話框“名稱”一欄中填入任意名稱,比如“虛擬內存測試”。在出現窗口中點擊“添加計數器”按鈕進入下一個窗口; ④在該窗口中打開“性能對象”的下拉列表,選擇其中的“Paging File”,勾選“從列表中選擇計數器”,并在下方的欄目中選擇“%Usage Peak”;勾選“從列表中選擇范例”,在下方的欄目中選擇“_Total”,再依次點擊“添加→關閉”結束(圖1)。
⑥在右側欄目中可以發(fā)現多了一個“虛擬內存測試”項目,如果該項目為紅色則說明還沒有啟動,點擊該項,選擇右鍵菜單中的“啟動”選項即可(圖2)。 接下來運行自己常用的一些應用程序,運行一段時間后,進入日志文件所在的系統(tǒng)分區(qū)下默認目錄“PerfLogs”,找到“虛擬內存測試_000001.csv”并用記事本程序打開它(圖6),在該內容中,我們查看每一欄中倒數第二項數值,這個數值是虛擬內存的使用比率,找到這項數值的最大值,比如圖中的“46”,用46%乘以500MB(前面所設定的虛擬內存數值),得出數值為230MB。 用該數值可以將初始大小設為230MB,而最大值可以根據磁盤空間大小自由設定,一般建議將它設置為最小值的2到3倍。這樣我們就可以將虛擬內存打造得更精準,使自己的愛機運行得更加流暢、更具效率了 |
|
|