RE: cpu average load

  • From: "Gogala, Mladen" <MGogala@xxxxxxxxxxxxxxxxxxxx>
  • To: "'cary.millsap@xxxxxxxxxx'" <cary.millsap@xxxxxxxxxx>, oracle-l@xxxxxxxxxxxxx
  • Date: Tue, 30 Nov 2004 10:19:02 -0500

This was a very precise and correct answer, but unfortunately rather hard to
Implement in practice. Process preemption or context switching, as it is
sometimes called, happens while CPU is in kernel mode. Kernel mode is
normally spent only on 2 major things: 
1) context switching
2) paging
CPU being in kernel mode means that OS it taking care of its own health and
Happiness and not working on the user request. Commands like ps -lp <PID> or
top will give you precise amount of kernel mode spent by your process. If
that amount is significant, it warrants further investigation by using truss
or strace. BTW, whenever a system service is requested, a context change
happens. It includes things like read, write, stat and alike. The mechanism 
for calling system services is based on "switch mode to kernel" trap. System
service  number is the 1st argument for the trap handler.

--
Mladen Gogala
Ext. 121

-----Original Message-----
From: Cary Millsap [mailto:cary.millsap@xxxxxxxxxx] 
Sent: Tuesday, November 30, 2004 9:59 AM
To: oracle-l@xxxxxxxxxxxxx
Subject: RE: cpu average load

The amount of response time that process preemptions are costing your
performance is measured as the amount of response time in an extended SQL
trace file that is not accounted for by the sum of your file's c values at
recursive depth zero, plus the sum of your file's ela values.



--
//www.freelists.org/webpage/oracle-l

Other related posts: