Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a Linux server process that should runs multiple threads at close to 100%, each on its own CPU. When I run the process on one server (see [1] below), the CPUs in question appear to stay pegged at 100%, according to top.

However, when I run my process on a different server (see [2] below), the CPUs are only at 100% around a half of the time, and the rest of the time drop to 50% or lower and bounce around.

How should I investigate the relevant scheduler, interrupt and other issues that might be contributing to this problem?

[1] Linux server1 m 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

[2] Linux server2 3.2.0-34-generic #53-Ubuntu SMP Thu Nov 15 10:48:16 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

share|improve this question
    
Is this a hyperthreading issue? Are you using CPU affinity? How many cores/threads are there? –  pjc50 Apr 11 '13 at 16:11
    
I think hyperthreading is off on both machines, but I will check. Same behavior with CPU affinity or not. Independent of number of threads, but I usually test with 6 on machines with 12+ cores. –  laslowh Apr 11 '13 at 16:30

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.