10.07.2015 Views

Expert Oracle Exadata - Parent Directory

Expert Oracle Exadata - Parent Directory

Expert Oracle Exadata - Parent Directory

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 10 EXADATA WAIT EVENTSResource Manager EventsFinally, there are a few Resource Manager events that you should be aware of. While these are notspecific to <strong>Exadata</strong>, Resource Manager provides key functionality for combining mixed workloads on<strong>Exadata</strong>. There are actually eight separate events as of release 11.2.0.2. The following query againstV$EVENT_NAME shows these events and their parameters.SYS@SANDBOX1> @valid_eventsEnter value for event_name: resmgr%EVENT CLASS P1 P2 P3------------------------------ --------------- -------- -------------------- ----resmgr:internal state change Concurrency locationresmgr:sessions to exitlocationresmgr:internal state cleanup Otherlocationresmgr:become active Scheduler locationresmgr:cpu quantumlocation consumer group idresmgr:large I/O queuedlocationresmgr:pq queuedlocationresmgr:small I/O queuedlocation8 rows selected.There are only two of these events that are of interest.resmgr:cpu quantumThis event is used to record forced idle time imposed by Database Resource Manager (DBRM) due tocompetition with higher priority work. Said another way, it is the time a process spent waiting for DBRMto allocate it a time slice.Event MeaningDBRM behaves in an analogous manner to CPU scheduling algorithms in that it divides time into units(quantum) and either allows a process to run or not depending on other workload on the system. UnlikeCPU scheduling algorithms though, DBRM throttling is interjected at key locations in the <strong>Oracle</strong> code toeliminate the possibility of a process being kicked off of the CPU when it is holding a shared resourcesuch as a latch. This prevents some nasty behavior that may occur on heavily loaded systems such aspriority inversion problems. In effect, the processes voluntarily go to sleep when they are not holdingthese shared resources. There are multiple locations in the code where these checks are implemented.Here’s an excerpt of a 10046 trace file showing the resmgr:cpu quantum event:341

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!