Operating System - HP-UX
1748158 Members
4069 Online
108758 Solutions
New Discussion юеВ

1 CPU Maximum Utilized, others are stying idle

 
SOLVED
Go to solution
Muhammad Ahmad
Frequent Advisor

1 CPU Maximum Utilized, others are stying idle

Hi,

is there any way to over-come the situation like out of four CPU; 1 of the CPU is nearly 100% utilized where as the other 3 CPU are staying almost idle?

the machine is rx2660.
O/S is HPUX 11.31.

Thank You.

Regards,
8 REPLIES 8
Dennis Handly
Acclaimed Contributor

Re: 1 CPU Maximum Utilized, others are stying idle

Yes, add more work so all CPUs are busy. :-)
Why are you worried?
If you want to make one process use multiple CPUs, you'll need to reprogram to use threads.
Muhammad Ahmad
Frequent Advisor

Re: 1 CPU Maximum Utilized, others are stying idle


Dennis: Thanks for your reply.

1. in respect to reprogram the code so that it could be executed in a multi-threaded way or in a scalable way, Infact Only Oracle Database service is running on this machine what can we do on O/S layer in this regard?

2. why the 4 CPU's are not being utilized in a balanced manner?

Regards,

Venkatesh BL
Honored Contributor

Re: 1 CPU Maximum Utilized, others are stying idle

Are you saying that all processes are running on only one CPU? Or is a single process hogging the CPU? Can you provide o/p from glance and/or top?
Yogesh M Puranik
Valued Contributor

Re: 1 CPU Maximum Utilized, others are stying idle

Hi,

It is absolutely possible, using WLM(Work Load Manager) and PRM ( PRocess Resource Manager)

Rgds

Yogesh
Dennis Handly
Acclaimed Contributor

Re: 1 CPU Maximum Utilized, others are stying idle

>1. In fact only Oracle Database service is running on this machine what can we do on OS layer in this regard?

If Oracle is the only thing running, you'll have to talk to them. If you aren't using threads, there is not much the OS can do.

>2. why the 4 CPUs are not being utilized in a balanced manner?

If you only have one process, multiple CPUs can't help, without using threads. And even then, not all algorithms can be improved by using threads.
Hein van den Heuvel
Honored Contributor
Solution

Re: 1 CPU Maximum Utilized, others are stying idle


>> 1 of the CPU is nearly 100% utilized where as the other 3 CPU are staying almost idle?

That's perfectly reasonable, if either
- there is only one process (thread!) burning CPU
- the system is forced to use just one processor for the most CPU consuming threads (WLM, mpsched actions, mpctl calls in the application)

Is the system 'happy'?

YOU have to help us understand which might be the case.

First, how did you come to your conclusion?
May we assume through 'top'? What other info did it show? Notably... did it show a single process or more than one 'fighting' for that special CPU?

Next looks around with 'mpsched -s' and 'mpsched -q'.
Any binding happening?

Check out: http://docs.hp.com/en/B2355-90689/mpsched.1.html

Did you start to investigate based on complaints, or out of curiosity?

>> fact Only Oracle Database service is running on this machine what can we do on O/S layer in this regard?

The OS will do what it is told to do. No more, no less. It is indeed rare, but not impossible, to see an Oracle installation use just 1 cpu. But it could be 'normal' with just one heavy, or broken application connected.
Was the busy process an Oracle foreground or background process?
What does Oracle believe the situation is like? (AWR, Statspack). Is it happy? Does it identify a CPU hog?

hth,

Hein van den Heuvel
HvdH Performance Consulting
Bill Hassell
Honored Contributor

Re: 1 CPU Maximum Utilized, others are stying idle

> why the 4 CPU's are not being utilized in a balanced manner?

If you have one process, then one CPU will be utilized. Without completely rewriting the program to break it up into parallel tasks (which you cannot do with most programs), the system executes each instruction in order. If you run 4 separate copies (instances) of Oracle then you'll see the other processors busy, but that is because they are independent.

The standard comparison to illustrate sequential versus parallel execution is this idea:

If one woman can have a baby in 9 months, then 9 women working in parallel should be able to have a baby in one month.


Bill Hassell, sysadmin
Dennis Handly
Acclaimed Contributor

Re: 1 CPU Maximum Utilized, others are stying idle

>why the 4 CPUs are not being utilized in a balanced manner?

And if the user isn't using threads, it would be very silly to move the process from one CPU to another to prevent wear on the the CPU. ;-)
This may require moving megabytes from the cache from one to the other. Or mess up on CCNUMA if using cell local memory.

Once you have a CPU, you should stay there if there is no other higher priority tasks.