Operating System - HP-UX
1752550 Members
4700 Online
108788 Solutions
New Discussion

Oracle on HP-UX: CPU load too high

 
ITC
Advisor

Oracle on HP-UX: CPU load too high

Hello
we have an Oracle 8.0.5 dbms running on HP-UX 11, on a 2-way RP 7400 system. The database is used by Oracle ERP (Oracle Applications) V 11.03 and there are no other applications running on the server.
We're recently experiencing a weird problem: the CPU load is often up to 100%, although the usage of our database has not changed. If I check the CPU load with sar I see a recurring pattern alternating high load cycles with low load ones, e.g.:

Time usr sys wio idle
13:31:16 78 4 1 17
13:32:16 79 8 1 12
13:33:16 71 8 2 19
13:34:16 10 6 5 78
13:35:16 35 7 5 52
13:36:16 75 17 1 7
13:37:16 88 12 0 0
13:38:16 82 18 0 0
13:39:16 82 18 0 0
13:40:16 85 15 0 0
13:41:16 87 13 0 0
13:42:16 29 15 7 49
13:43:16 22 19 7 52
13:44:16 13 11 7 69
13:45:16 34 10 5 52
13:46:16 64 28 1 7
13:47:16 92 8 0 0
13:48:16 87 13 0 0
13:49:16 88 12 0 0
13:50:16 92 8 0 0
13:51:16 90 10 0 0

I see this CPU usage pattern even when the number of users connected to the system is minimum, so the load does not really depend on what the application is doing.

The Oracle background processes (pmon, smon etc.) and even the listener seem not being the cause of the problem (using ps -eaf):

oracle 19479 1 0 03:57:01 ? 0:04 ora_smon_OATEST
oracle 19404 1 0 03:56:50 ? 0:06 ora_smon_OAPROD
oracle 19387 1 0 03:56:50 ? 0:07 ora_pmon_OAPROD
oracle 19467 1 0 03:57:01 ? 0:05 ora_pmon_OATEST
oracle 19576 1 0 03:57:17 ? 0:16 /oracle/app/oracle/product/8.0.5/bin/tnslsnr LISTENER -inher

If I understood correclty Oracle's architecture, the CPU is mainly used by processes 'spawned' by the listener:

ps -eaf | grep oracleOA | awk ' $4 !~ /0/ {print ;}'
oracle 22234 1 177 04:00:32 ? 21:17 oracleOAPROD (LOCAL=NO)
oracle 22077 1 174 04:00:19 ? 22:25 oracleOAPROD (LOCAL=NO)
oracle 22023 1 178 04:00:13 ? 22:18 oracleOAPROD (LOCAL=NO)
oracle 22451 1 173 04:00:44 ? 20:54 oracleOAPROD (LOCAL=NO)
oracle 22143 1 174 04:00:22 ? 22:10 oracleOAPROD (LOCAL=NO)
oracle 22419 1 168 04:00:43 ? 21:08 oracleOAPROD (LOCAL=NO)
oracle 22400 1 168 04:00:41 ? 20:52 oracleOAPROD (LOCAL=NO)
oracle 22011 1 174 04:00:12 ? 22:15 oracleOAPROD (LOCAL=NO)
oracle 22455 1 168 04:00:44 ? 20:54 oracleOAPROD (LOCAL=NO)
applmgr 20931 1 87 03:58:33 ? 1:25 oracleOAPROD (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)
oracle 22207 1 171 04:00:28 ? 21:39 oracleOAPROD (LOCAL=NO)
oracle 22447 1 173 04:00:44 ? 21:18 oracleOAPROD (LOCAL=NO)
oracle 22374 1 179 04:00:40 ? 20:52 oracleOAPROD (LOCAL=NO)
oracle 29236 1 39 15:08:07 ? 0:05 oracleOAPROD (LOCAL=NO)
oracle 22385 1 168 04:00:40 ? 21:36 oracleOAPROD (LOCAL=NO)
oracle 17142 1 26 08:28:29 ? 2:01 oracleOAPROD (LOCAL=NO)
oracle 22327 1 174 04:00:39 ? 21:16 oracleOAPROD (LOCAL=NO)
applmgr 20501 1 168 15:50:49 ? 0:01 oracleOAPROD (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)
oracle 22281 1 168 04:00:34 ? 21:32 oracleOAPROD (LOCAL=NO)
oracle 592 1 78 08:56:15 ? 1:06 oracleOAPROD (LOCAL=NO)

Does anybody have a hint on what's going on? The Oracle database is restarted every morning, after the cold backup, so it's not a matter of long running processes gone haywire...
Thanks

Dino Ferrero Merlino
1 REPLY 1
ITC
Advisor

Re: Oracle on HP-UX: CPU load too high

Well it was a problem of processes gone haywire after all... there's a monitoring tool (Foglight) used by our remote DBA service to control Oracle that starts an 'agent' every x minutes.
Usually these agents (Unix processes) die once the monitoring query is over, but apparently a few dozens did not terminate properly during the last three months.
Killing those processes solved the problem: the CPU usage is now back to normal.