On Thu, 2009-05-07 at 15:40 -0300, Thiago Monaco Papageorgiou wrote:
Hello everybody!
We have a interesting issue about dovecot behavior here. First, the
scenario: We have 2 server running with the same load, one with our old pop3 solution (out of date) and other with Dovecot. We realized that dovecot are comsuming more CPU, and this consumption is growing day by day. When we starts dovecot, it runs between 40%-45% of CPU consumption and our old solution runs on 30-35%. This is quite acceptable, so no problem here. The problem is one day after it jumps to 45%-55% of cpu comsunption while the old pop3 solution runs on the same CPU consumption of one day before (30%-35). I attached a graph with this information.
I see you're using NFS and Linux. We've seen something similar.
Try to find out where this CPU time is being spent - in the kernel, or in userland. 'top' will tell you, just start it, and look at the second or 3rd line where it says 'CPU'. 'us' is user time, 'sy' is system time, and 'si' is 'system interrupt'. The latter two are time spent in the kernel.
If all CPU is used by 'us' then it's really dovecot that is eating cycles. If it is 'sy' or 'si' it's the kernel.
In that case, you might want to upgrade. Upgrade to 2.6.27.10 at least, 2.7.27.latest preferably - many NFS bugs have been fixed there. I have no idea if there is a drop-in CentOS kernel >= 2.6.27.10 - you might have to compile your own kernel.
Mike.