Re: How do I find top CPU consumers on a windows machine running Oracle 9i (9.2.0.4 Enterprise Edition)?

  • From: Jason Heinrich <jheinrich@xxxxxxxx>
  • To: <WLJohnson@xxxxxxxxxxxxxxxxxxx>, <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 03 Jul 2007 09:04:06 -0500

You¹re on the right path.  In Process Explorer, double-click on the
oracle.exe and view the threads tab.  Select one of the threads that¹s
causing high CPU usage, and look at its Thread ID.  The thread ID ties to
the PADDR column in v$process.  So you can find the session information like
so:

select * from v$session where paddr = (select addr from v$process where
spid=:threadid);


On 7/3/07 8:08 AM, Johnson, William L (TEIS) wrote:

> HP Unix is simple ­ use a top command.
>  
> Solaris is not as friendly ­ but you can use prstat.
>  
> When I use task manager in Windows XP, I can only see CPU being consumed by
> the Oracle.exe process.  I can then perform a ³tlist² on the process number to
> find out which instance of Oracle is consuming the cpu.
>  
> I tried a utility called procexp.exe, but it doesn¹t tie back to any sessions
> in the database.
>  
> Does anyone have a utility to find the top CPU consumers on a windows machine?
>  
> I am desperate and just about ready to stop both production instances since I
> can not find the offenders and a 4-way, dual core machine has been running
> 100% cpu for a while?
>  
> Thanks!
>  
> 



---------------
Jason Heinrich
Oracle Database Administrator
Pensacola Christian College
(850) 478-8496 x2509
jheinrich@xxxxxxxx

Other related posts: