Can anything be done to speed up Roundcube on a Celeron 700 with 512MB RAM (maxed out) running Gentoo Linux? We're using the Chrome browser and the CPU is 95% idle when no one is logged into X. I'm getting reports of 30+ seconds to open an email.
Your problem is likely the amount of RAM; when you start X and Chrome, your client almost surely starts swapping, because there isn't enough RAM for the running processes. Roundcubemail uses AJAX which requires a fast javascript interpreter, and this makes things worse if your processes (including Chrome) are swapping.
On such low-end systems you should use a very lightweight browser instead of Chrome, even if this can give some limitations.
This is simple to check. With all apps running simply run "free -m" and post the output here.
Here's what I get while someone is seated at the system and using Roundcube in Chrome:
# free
Using the "-m" switch displays output in megabytes--easier to read.
total used free shared buffers cached
Mem: 513072 447812 65260 0 16896 209672 -/+ buffers/cache: 221244 291828 Swap: 2097148 0 2097148
This clearly shows the host isn't using swap, has 64MB free, and is using ~200MB for buffer cache. So it seems to have plenty of memory.
JVMs and JAVA are notoriously inefficient, but that should cause a 30s delay just opening a new email. Using HTTPS and JAVA together may be enough to bring a Celery 700 to its knees. Try using straight HTTP instead to eliminate the encryption. This will make a big difference with binary attachments such as photos and the like. With small text only emails it shouldn't cause a big delay.
I'd rather stick with HTTPS if possible. Are there any other good options for speeding things up besides switching browsers and disabling HTTPS?