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