2012年2月6日 星期一

常用效能計數器介紹


Network Interface計數器
Bytes Total/sec 是在每個網路介面卡上發送和接收位元組的速率,包括幀字元在內。Network Interface\\Bytes Received/secNetwork Interface\\Bytes Received/secNetwork Interface\\Bytes Sent/sec的總和。
Current Bandwidth 指以位元/每秒估計的網路介面的當前頻寬。
Output Queue Length 為輸出資料列隊(資料包)的長度。如果這個長於2,即會出現延緩並且如果可能的話找出並解決瓶頸問題。由於請求是在這個操作由網路驅動程式介面規格(NDIS)列隊,這永遠會是0
Packets/sec 為在網路介面發送和接收資料包的速率。
Packets Outbound Discarded 為選為丟棄的輸出資料包的數目,即便沒有發現會阻止傳輸這些資料包的錯誤。丟棄資料包的可能原因是釋放緩衝空間。
Packets Outbound Error 為由於錯誤不能傳輸的輸出資料包的數目。
Packets Received Discarded 指選定要丟棄的輸入資料包的數位,即使沒有發現阻礙這些資料包成為可傳送到更高層協定的錯誤。造成丟棄資料包的可能原因是釋放緩衝器空間。
Packets Received Error 指輸入資料包的數目,這些資料包含阻礙它們成為可傳送到更高層協定的錯誤。
Packets Received/sec 為在網路介面接收資料包的速率。
Packets Sent/sec 為在網路介面發送資料包的速率。

Processor計數器
% Processor Time 指處理器用來執行非閒置執行緒時間的百分比。計算方法是,測量範例間隔內非閒置執行緒活動的時間,用範例間隔減去該值。(每台處理器有一個閒置執行緒,該執行緒在沒有其他執行緒可以運行時消耗週期)。這個計數器是處理器活動的主要說明器,顯示在範例間隔時所觀察的繁忙時間平均百分比。這個值是用100%減去該服務不活動的時間計算出來的。 通常CPU的平均活動符合應該在80%以下,超過80%表示CPU的處理能力已經達到極限。
% DPC Time 指在範例間隔期間處理器用在緩延程式調用(DPC)接收和提供服務的百分比。DPC正在運行的為比標準間隔優先權低的間隔。由於DPC是以特權模式執行的,DPC時間的百分比為特權時間百分比的一部分。這些時間單獨計算並且不屬於間隔計算總數的一部分。這個總數顯示了作為實例時間百分比的平均忙時。越低越好。在多處理器系統中,如果這個值大於50%並且Processor:% Processor Time非常高,加入一個網卡可能會提高性能,提供的網路已經不飽和。
% Privileged Time 在特權模式下處理執行緒執行代碼所花時間的百分比。當調用Windows系統服務時,此服務經常在特權模式運行,以便獲取對系統專有資料的訪問。在使用者模式執行的執行緒無法訪問這些資料。 對系統的調用可以是直接的(explicit)或間接的(implicit),例如分頁錯誤或中斷。不像某些早期的作業系統Windows除了使用使用者和特權模式的傳統保護模式之外,還使用處理邊界作為分系統保護。某些由Windows為您的應用程式所做的操作除了出現在處理的特權時間內,還可能在其他子系統處理出現。這個時間包括CPU維護中斷和延遲過程調
用的時間。如果該值過高,應該有I/O處理導致大量系統中斷。
% User Time 指處理器處於使用者模式的時間百分比。使用者模式是為應用程式、環境分系統和整數分系統設計的有限處理模式。另一個模式為特權模式,它是為作業系統元件設計的並且允許直接訪問硬體和所有記憶體。作業系統將應用程式執行緒轉換成特權模式以訪問作業系統服務。這個計數值將平均忙時作為示例時間的一部分顯示。
Interrupts/sec 是處理器接收和處理硬體中斷的平均速度,單位為每秒事例數。這不包括分開計數的延遲的進程調用(DPCs)。這個值說明生成中斷的設備(如系統時鐘、滑鼠、磁碟機、資料通訊線、網路介面卡和其他外緣設備)的活動。這些設備通常在完成任務或需要注意時中斷處理器。正常執行緒執行因此被中斷。系統時鐘通常每10毫秒中斷處理器一次,創建中斷活動的背景。這個計數值顯示用上兩個實例中觀察到的值之間的差除於實例間隔的持續時間所得的值。
% Interrupt Time 是處理器在實例間隔期間接受和服務硬體中斷的時間。此值間接表示了生成間隔的設備活動, 如系統時鐘、滑鼠、磁片驅動程式、資料通訊線路、網路介面卡和其他週邊設備。當這些設備完成一項任務或需要管理時,它們通常會中斷處理器。中斷期間,正常的執行緒執行會停止。多數系統時鐘會每隔10毫秒中斷處理器,產生間隔活動的背景,在間隔期間,終止正常的執行緒執行。此計數器顯示此平均佔用時間為實例時間的一部分。

Process計數器
Private Bytes 指這個處理不能與其他處理共用的、已分配的當前位元組數。
Page Faults/sec 指在這個進程中執行執行緒造成的分頁錯誤出現的速度。當執行緒引用了不在主記憶體工作集中的虛擬記憶體頁即會出現Page Fault。如果它在備用表中(即已經在主記憶體中)或另一個共用頁的處理正在使用它,就會引起無法從磁片中獲取頁。
% User Time 指處理執行緒用於執行使用使用者模式的代碼的時間的百分比。應用程式、環境分系統和集合分系統是以使用者模式執行的。Windows的可執行程式、內核和設備驅動程式不會被以使用者模式執行的代碼損壞。不像某些早期的作業系統,Windows除了使用使用者和特權模式的傳統式保護模式之外,還使用處理邊界作為分系統保護。某些由Windows為您的應用程式所做的操作除了出現在處理的特權時間內,還可能在其他子系統處理出現。
% Privileged Time 是在特權模式下處理執行緒執行代碼所花時間的百分比。當調用Windows系統服務時,此服務經常在特權模式運行,以便獲取對系統專有資料的訪問。在使用者模式執行的執行緒無法訪問這些資料。對系統的調用可以是直接的(explicit)或間接的(implicit),例如分頁錯誤或間隔。不像某些早期的作業系統,Windows除了使用使用者和特權模式的傳統保護模式之外,還使用進程邊界作為分系統保護。某些由Windows為您的應用程式所做的操作除了出現在進程的特權時間內,還可能在其他子系統進程出現。
% Processor Time 是所有進程執行緒使用處理器執行指令所花的時間百分比。指令是電腦執行的基礎單位。執行緒是執行指令的物件,進程是程式運行時創建的物件。此計數包括處理某些硬體間隔和陷阱條件所執行的代碼。
Virtual Bytes 指處理使用的虛擬位址空間的以位元組數顯示的當前大小。使用虛擬位址空間不一定是指對磁片或主記憶體頁的相應的使用。虛擬空間是有限的,可能會限制處理載入資料庫的能力。
Working Set 指這個處理的Working Set中的當前位元組數。Working Set是在處理中被執行緒最近觸到的那個記憶體頁集。如果電腦上的可用記憶體處於閾值以上,即使頁不在使用中,也會留在一個處理的Working Set中。當可用記憶體降到閾值以下,將從Working Set中刪除頁。如果需要頁時,它會在離開主記憶體前軟故障返回到Working Set中。
Page File Bytes 指這個處理在Paging file中使用的最大位元組數。Paging File用於存儲不包含在其他檔中的由處理使用的記憶體頁。Paging File由所有處理共用,並且Paging File空間不足會防止其他處理分配記憶體。
I/O Data Bytes/sec 處理從I/O操作讀取/寫入位元組的速度。這個計數器為所有由本處理產生的包括檔、網路和設備I/O的活動計數。
PhysicalDisk計數器
Avg. Disk Queue Length 指讀取和寫入請求(為所選磁片在實例間隔中列隊的)的平均數。
% Disk Time 指所選磁碟機忙於為讀或寫入請求提供服務所用的時間的百分比。
Current Disk Queue Length 在收集性能資料時磁片上當前的請求數量。它還包括在收集時處於服務的請求。這是瞬間的快照,不是時間間隔的平均值。多軸磁片設備能有一次處於運行狀態的多重請求,但是其他同期請求正在等待服務。此計數器會反映暫時的高或低的佇列長度,但是如果磁碟機被迫持續運行,它有可能一直處於高的狀態。請求的延遲與此佇列的長度減去磁片的軸數成正比。為了提高性能,此差應該平均小於二。一個經驗規則是將每一個磁片的平均請求佇列長度保持在2以下。當這個計數器的值超過了每個磁片2時,系統將出現一個I/O極限。
Split IO/Sec 彙報磁片上的I/O分割成多個I/O的速率。一個分割的I/O可能是由於請求的資料太大不能放進一個單一的I/O中或者磁片碎片化而引起的。
% Idle Time 彙報在實例間隔時磁片閒置時間的百分比。
Avg. Disk Bytes/Transfer指在寫入或讀取操作時從磁片上傳送或傳出位元組的平均數。
Disk Read Bytes/sec指在讀取操作時從磁片上傳送位元組的速率。
Disk Write Bytes/sec 指在寫入操作時傳送到磁片上的位元組速度。
Memory計數器
Page Faults/sec 每秒鐘出錯頁面的平均數量。由於每個錯誤操作中只有一個頁面出錯,計算單位為每秒出錯頁面數量,因此這也等於分頁錯誤操作的數量。這個計數器包括硬錯誤(那些需要磁片訪問的)和軟錯誤(在實體記憶體的其他地方找到的錯誤頁)。許多處理器可以在有大量軟錯誤的情況下繼續操作。但是,硬錯誤可以導致明顯的拖延。當進程請求一塊記憶體但系統無法分配時發生分頁錯誤,該值過高(與未加壓時比較)可能有兩方面的原因:1 應用程式已經佔用了過多記憶體,這可以通過增加記憶體量來解決。2 應用程式的記憶體請求過於頻繁(如:頻繁地創建和銷毀對象)。此時要考慮更改設計。
Committed Bytes 指以位元組表示的確認虛擬記憶體。確認記憶體磁片分頁檔上保留了空間的實體記憶體。每個物理磁片上可以有一個或一個以上的分頁檔。這個計數器只顯示上一回觀察到的值;它不是一個平均值。
Available MBytes 電腦上運行的進程的可用實體記憶體大小,單位是千位元組,而不是在Memory\\Available Bytes中報告的位元組。它是將零的、空閒的和備用記憶體清單的空間添加在一起來計算的。空閒記憶體可隨時使用;零記憶體是為了防止以後的進程看到以前進程使用的資料而在很多頁記憶體中填滿了零的記憶體。備用記憶體是指從進程的工作集(它的物理 記憶體)移到磁片的,但是仍舊可以重新調用的記憶體。 這個計數器只顯示觀察到的最後一個值;它不是一個平均值。當這個數值變小時,Windows開始頻繁地調用磁片分頁檔。如果這個數值很小,例如小於5 MB,系統會將大部分時間消耗在操作分頁檔上。
Pages/sec 指為解決硬頁錯誤從磁片讀取或寫入磁片的速度。這個計數器是可以顯示導致系統範圍延緩類型錯誤的主要指示器。它是Memory\\Pages Input/secMemory\\PagesOutput/sec的總和。是用頁數計算的,以便在不用做轉換的情況下就可以同其他頁計數如: Memory\\Page Faults/sec做比較,這個值包括為滿足錯誤而在檔案系統緩存(通常由應用程式請求)的非緩存映射記憶體檔中檢索的頁。 一般如果pages/sec持續高於幾百,那麼您應該進一步研究頁交換活動。
Commit Limit 指在不用擴展分頁檔的情況下可以使用的虛擬記憶體的數量。這是用位元組來計算的。確認的記憶體是指保留在磁片分頁檔上的實體記憶體。在每個邏輯磁片上可以有一個分頁記憶體。如果擴展分頁檔,這個限量將相應增加。這個計數器只顯示上一回觀察到的值;而不是一個平均值。

沒有留言: