I have an m1.small EC2 instance that is mostly just running Apache as a web server for several simple PHP web sites (that use RDS as a database). The server is constantly with a very high load average - around 8, and never below 5. This causes my web sites to be annoyingly slow, much more then I'd expect from a supposedly 2.6GHz CPU with 1.7GB RAM.
top
and friends shows that other then ~50% "steal" time (AFAIU, time stolen by the hypervisor for other VMs on the same CPU), the rest is almost entirely "IRQ" time.
mpstat
says that this time is spend on a very stable 191.59 interrupts/sec (i.e. that number almost doesn't change over time), and according to '/proc/interrupts' these are mostly spend on xen-percpu-virq timer0
and xen-dyn-event eth0
.
What are these, and how can I get the EC2 instance to lower the load and spend some more time on my PHP sites?
/cat /proc/interrupts
show?/proc/interrupts
just shows high counts for the items specified in the question, and low or zero for everything else. Regarding performance - I don't think I'm expected a lot - a celeron class CPU should be able to run a requested through a somewhat customized wordpress site in less then 16 seconds (which is my current performance).