This discussion is archived
6 Replies Latest reply: Apr 26, 2013 9:46 AM by gharabed RSS

Why does OEM/ASH show CPU and CPU Wait the main wait?

gharabed Newbie
Currently Being Moderated
I'm wondering why OEM/ASH shows the main wait events as CPU and CPU Wait:

Event Event Class % Event Avg Active Sessions
CPU + Wait for CPU CPU 72.60 16.69

yet top show 63% cpu idle time:

Cpu(s): 6.7%us, 1.9%sy, 0.0%ni, 63.8%id, 27.0%wa, 0.0%hi, 0.5%si, 0.0%st
Mem: 49429760k total, 48709304k used, 720456k free, 96280k buffers

I can tell the bottleneck is disk io...when I do an iostat -x you can see my data disks are just about at 100% utilization:

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sdb 142.67 3374.67 517.00 644.33 116730.67 32152.00 128.20 6.92 5.97 0.83 96.47
sdb1 142.67 3374.67 517.00 644.33 116730.67 32152.00 128.20 6.92 5.97 0.83 96.47
sdc 102.33 3853.00 555.00 641.67 88029.33 35920.00 103.58 5.22 4.39 0.82 98.03
sdc1 102.33 3853.00 555.00 641.67 88029.33 35920.00 103.58 5.22 4.39 0.82 98.03

Ah, forgot to say, I am using Oracle 11.2.0.1 on RHEL 5.7

Edited by: 1002603 on Apr 25, 2013 2:32 PM

Edited by: gharabedian on Apr 25, 2013 2:38 PM
  • 1. Re: Why does OEM/ASH show CPU and CPU Wait the main wait?
    sb92075 Guru
    Currently Being Moderated
    1002603 wrote:
    I'm wondering why OEM/ASH shows the main wait events as CPU and CPU Wait:

    Event Event Class % Event Avg Active Sessions
    CPU + Wait for CPU CPU 72.60 16.69
    in EVERY TOP 5 list one item will reside in the top spot.
    Simply being listed or being on top of such a list does NOT mean that it is a problem that needs to be solved.
  • 2. Re: Why does OEM/ASH show CPU and CPU Wait the main wait?
    gharabed Newbie
    Currently Being Moderated
    Right, I understand that. Let me try to re-state my question. OEM is telling me that the largest wait is for CPU/CPU Wait, yet I can see from top that there are plenty of free CPU cycles. I can see from iostat that the disk subsystem is completely saturated. My question is...why is OEM reporting that CPU is the worst wait offender when there are plenty of free CPU cycles available and the disk subsystem is saturated? Why isn't OEM reporting pysical io waits as the worst wait offender?
  • 3. Re: Why does OEM/ASH show CPU and CPU Wait the main wait?
    sb92075 Guru
    Currently Being Moderated
    1002603 wrote:
    Right, I understand that. Let me try to re-state my question. OEM is telling me that the largest wait is for CPU/CPU Wait, yet I can see from top that there are plenty of free CPU cycles. I can see from iostat that the disk subsystem is completely saturated. My question is...why is OEM reporting that CPU is the worst wait offender when there are plenty of free CPU cycles available and the disk subsystem is saturated? Why isn't OEM reporting pysical io waits as the worst wait offender?
    what evidence do you have that IO Waits should/would be reported in this section of the report?
  • 4. Re: Why does OEM/ASH show CPU and CPU Wait the main wait?
    Aman.... Oracle ACE
    Currently Being Moderated
    What OEM does is to report the consumption of the CPU out of the total db time. This means if you have got a report out of 60 minutes(3600 seconds), out of this , CPU time would be reported and all what would be told that you were using CPU this much for doing the work . That's why the top 5 event are now not shown as wait events but timed events and the db cpu is the timed event only. If you are seeing from top that most of the time cpu is idle than it probably is and the CPU consumption reported by oracle is the work that you did in the monitoring period in terms of cpu seconds.

    Aman....
  • 5. Re: Why does OEM/ASH show CPU and CPU Wait the main wait?
    Richard Foote Employee ACE
    Currently Being Moderated
    It doesn't necessarily mean the database was waiting for CPU, it simply means that out of all the DB time, the database was spending most of its time on CPU.

    Cheers

    Richard Foote
    http://richardfoote.wordpress.com/
  • 6. Re: Why does OEM/ASH show CPU and CPU Wait the main wait?
    gharabed Newbie
    Currently Being Moderated
    Because reported wait events contain the class of "USER IO" and "SYSTEM IO". If either of these were a bottleneck then they would be reported.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points