3

This is my "top" screen. Now it's 2.96. Sometimes it goes above 3! I've read that it's not good. How to investigate and fix it? enter image description here

emeraldhieu
  • 141
  • 1
  • 1
  • 4

2 Answers2

6

You seem to be seriously using a lot of swap there. You have a relatively small amount of memory allocated to cache/buffers.

Your %wa is at 49.5%. That value corresponds to the CPU waiting for I/O to complete.

I suspect you have that is or was using a large ammount of memory. But perhaps you also have something performing a lot of I/O as well.

Fire up iotop, and you might get a better picture of the I/O situation.

P.S. If you are not using ksplice, then you are almost certainly running a kernel with known vulnerabilities. 354 days of uptime is too long.

Zoredache
  • 128,755
  • 40
  • 271
  • 413
4

Nothing wrong with your top.
MySQL database daemon is eating most of the CPU. You can press C to find the exact commands/instructions inside the top view.
If it is a surprise for you that your MySQL database is so busy then you need to investigate what is using it (webserver, application?). There are tools for this, including those provided by native MySQL packages.

Alex
  • 1,768
  • 4
  • 30
  • 51
  • One example of such native tool: http://dev.mysql.com/doc/refman/5.0/en/slow-query-log.html – Alex Mar 02 '12 at 02:33
  • 3
    Why do you suspect mysql if it is only at `7.6%` CPU and `36%` Memory? It does seem to be busiest, but the problem seems to be `I/O` see the `%wa`. Not saying it isn't mysql, but I think I would want to look at `iotop` first. – Zoredache Mar 02 '12 at 02:36
  • Agree with Zoredache. Its a common misconception among newbies that load is directly related to CPU usage. Sometimes it is related yes, but not always. Also the general rule for full utilization is when load is equal to the number of cores (though hyperthreading screws this up). – phemmer Mar 02 '12 at 03:05
  • 1
    The idea came from the fact that the server seems to only have mysql running (the other processes seem to be standard packages installed with a typical linux distro). Hence the suggestion to profile MySQL. – Alex Mar 02 '12 at 03:55