Examining Processor TimeData:
On multiprocessor systems, theProcessor% Processor Time value reported by System Monitor willnever exceed 100 percent for any particular processor or thread. Onthe other hand, the value of the % Processor Time reported for theProcess object can report values over 100 percent; if such valuesoccur, this could indicate that threads of the process arecumulatively using more than 100 percent of a processor. To getmore detailed information, use the Thread object counters toanalyze the processor time each thread within a process is using.Investigating other data described in this section, such as DPCactivity or context switching, might help you to interpret highprocessor-time values.
多處理器系統(tǒng)中,由系統(tǒng)監(jiān)視報告的處理器ProcessorTime%值對任何個別處 理器或線程不會超出100%。另一方面,進(jìn)程對象ProcessorTime%報告值能超出100%,如果超出就意味著該進(jìn)程的這些線程在累加地超出100%使用一個處理器。要得到更詳盡的信息,使用線程對象計數(shù)器去分析該處理器在一個進(jìn)程里使用每個線程的時間。調(diào)查在這部分描述的其它數(shù)據(jù),如DPC活動或上下文切換,可能會幫助你去解釋高ProcessorTime%值。
![[轉(zhuǎn)]%ProcessorTime(Process_Total)能超過100% processlist time](http://img.aihuau.com/images/01111101/01024554t01db8a47fd39659d56.jpg)
% Processor Time(Processor_Total)
指處理器用來執(zhí)行非閑置線程時間的百分比。計算方法是:度量處理器用來執(zhí)行空閑線程的時間,然后用100%減去該值。(每個處理器有一個空閑線程,該線程在沒有其他線程可以運行時消耗周期)。此計數(shù)器是處理器活動的主要指示器,顯示在采樣間隔期間所觀察的繁忙時間平均百分比。應(yīng)注意,對處理器是否空閑的計算是在系統(tǒng)時鐘的內(nèi)部采樣間隔期間(10ms)執(zhí)行的??紤]到現(xiàn)在的處理器速度非??欤虼?,在處理器可能會用大量時間為系統(tǒng)時鐘采樣間隔之間的線程提供服務(wù)時,%Processor Time會低估處理器利用率。當(dāng)恰好進(jìn)行采樣后即向計時器發(fā)出信號時,更可能對應(yīng)用程序做出不準(zhǔn)確地度量,基于工作負(fù)荷的計時器應(yīng)用程序是一個這樣的示例。
%Processor Time (Process _Total)
D0是所有進(jìn)程線程使用處理器執(zhí)行指令所花的時間百分比。指令是計算機(jī)執(zhí)行的基礎(chǔ)單位。線程是執(zhí)行指令的對象,進(jìn)程是程序運行時創(chuàng)建的對象。此計數(shù)包括處理某些硬件間隔和陷阱條件所執(zhí)行的代碼。
多處理器系統(tǒng)中,對任何處理器或線程,系統(tǒng)監(jiān)視器報告的Processor% ProcessorTime值不會超出100%。另一方面,進(jìn)程對象(也就是Process)ProcessorTime%值能超出100%;如果超出就意味著該進(jìn)程的線程累計使用超出了一個處理器的100%。要得到更詳盡的信息,使用線程對象計數(shù)器去分析在該進(jìn)程中每個線程的ProcessorTime%值。調(diào)查在這部分描述的其它數(shù)據(jù),如延遲過程調(diào)用(DPC)活動或上下文切換,可能會幫助你去解釋高ProcessorTime%值。
“Process(…)% Processor Time” can go up to N*100 (where N is thenumber of CPUs) because it adds up the CPU usage of the requestedprocess across all the CPUs.
l,T8G&X9D$L$M$N!D2K02.“Process(_Total)%Processor Time” should always be around N*100 (where N is thenumber CPUs) because it adds up the CPU usage of each process,including the idle process.
3.“Processor(…)% Processor Time” can go up to 100 because it’sthe CPU usage of the requested CPU.
“Processor(_Total)% Processor Time” can go up to 100 because it’sthe average CPU usage across all CPUs.
Processor(_Total)% ProcessorTime
This counter gives the total processor utilization figurefor the server as a whole. For example, on a dual processor systemwith one processor pegged out at 100% utilization and the otherprocessor standing idle, a figure of about 50% would berecorded.
This server metric is useful for gauging overall how busya server is or, put in another way, how much spare capacity thereis available (by subtracting from 100%).
If per-processor information is required to be monitoredby Resource Manager, then additional server metrics may beconfigured for monitoring:
Processor(0)% Processor Time
Processor(1)% Processor Time
... etc.
(See the Resource Manager Administrator’s Guide and thehelp within the Presentation Server Console for information onCustomizing Server Metrics).
Process Processor Utilization
In addition to monitoring server metrics Resource Manageralso monitors process activity; one aspect of process activitymonitored is the degree to which the processor(s) is beingused.
Processor usage of each process on the server is sampledat regular intervals using a standard operating system call - notethat the operating system call used returns the sum ofprocessor time used by all threads within the process. ResourceManager expresses the processor time used during the sampledinterval as a percentage by dividing this time by the elapsed timesince the previous sample.
On a multi-processor system it is quite possible for thepercentage reported to exceed 100% in the case of a multi-threadedprocess. For example, on a dual-processor system, a multi-threadedprocess in which two threads are performing lengthy processorintensive calculations would cause a value of about 200% to berecorded.
This process-specific processor utilization is useful forgauging the state (and possibly health) of the process; if aprocess which normally uses little processor time is seen to beconsuming a figure approaching 100%, a likely explanation is thatit has encountered a bug which has caused it to enter anuncontrolled looping state.
轉(zhuǎn)載地址:http://www.cnitblog.com/stomic/archive/2009/03/08/55193.html
愛華網(wǎng)


