Load average 3.00 on mostly idle server
From the output of ps -ALo stat,pid,comm | egrep '^(R|D)'
, it seems that you have three processes in uninterruptible sleep (D
state). As Linux count processes in D
state when calculating loadavg
, maybe these three prltoolsd
processes are the cause of the relatively high load average.
From a Google search, it seems that prltoolsd
is part of the "Parallels Tools" suite, some sort of guest additions for the hosted image. As they are sleeping in kernel-level system calls (ie: uninterruptable sleep), maybe thery are listeing on a "fake" device to allow the host system to communicate with the guest system, hence the 3.0 load average value.
If you want to be really sure they are the cause of the problem, stop the prltoolsd
processes and/or uninstall the tools. Anyway, I strongly suspect you can completely ignore them and the 3.0 load average...
First of all, load average is a useless metric without context, particularly knowing how many CPU cores your server has. A load average of 3 on a single-core server (somewhat busy) is very different from the same load average on one with, say, 64 cores.
That said, mysqld
is your top process, and it's multi-threaded, meaning the one process can actually be using multiple CPU cores at once. Run ps -efT | grep mysqld
to see how many active threads it has. top
will also show threads with the -H
option. Even if mysql isn't actively getting queries, it does run some background tasks. You may want to check its logs to see what it's doing.
On Linux a process that got stuck in I/O would also be counted as placed into run-queue. This is a bug feature. You can check/show vmstat 1 2
's output, to see if you have any blocked, for e. g..