Ubuntu – Low priority process (nice 19) getting more CPU time than regular process (nice 0)

14.04cpu loadniceserver

I have a server running Ubuntu server 14.04 64bit and I am having an "interesting" problem with it.
I have 2 users running some programs concurrentlly – d and m.
The processes of user "m" are not time critical, and therefore are being run on a "nice" value of 19.
The processes of user "d" are time critical, and therefore are running on the standard "nice" value of 0.
The thing is, the processes of user "m" are still getting more CPU time than those of user "d".

Also, despite all the CPU pressure, one of the CPUs (3 in the snapshot) is hardly getting any use.

I cannot reproduce the issue in an identical machine running Ubuntu server 10.04 64bit (I know, I should have updated by now).

I am attaching a snapshot of htop running to illustrate the issue.
Can anyone help me with this?

htop screenshot

Thanks in advance.

PS – The screenshot get reduced on upload and becomes too small to be readable. Here is a link to a full sized file.

Best Answer

Ok, so it seems I have found an answer. Running iotop made me realize what was going on - it was reporting the pyrad jobs as taking 100% I/O, which meant the jobs were effectively I/O and not CPU bound.

After a trip to the server room where no errors were being reported on the HUD display, entering the iDRAc controller revealed a degraded RAID5 array.

Now that the array is fixed, everything is back to normal operation.

Regardless, thank you all for your suggestions and time.