15 ms·
Using micro instances I've seen it go up to 99% during CPU intensive work (ex: app build). The hang ups waiting for it continue made me decide to switch the bui
by sehrope 13y ago
Using micro instances I've seen it go up to 99% during CPU intensive work (ex: app build). The hang ups waiting for it continue made me decide to switch the build server to an m1.small instance instead. It's idle the vast majority of the time but the extra $$ for it is totally worth it when you're running a build.
The steal % is usually zero on the m1.small instance. I just tried maxing out the cpu and watching "top" this is as high as it got:
Cpu(s): 5.3%us, 39.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 55.7%st
To max out the cpu I ran the following in a separate ssh terminal while watching "top". An m1.small only has a single v-cpu so only a single running copy should be necessary.
while :; do date > /dev/null ; done
- archivator 13y agoMicro instances only provide "burst" CPU usage - if you keep above a certain threshold for long enough, it will throttle you by stealing CPU time (hence the 99%).
- sehrope 13y agoYes that's exactly what happened. I originally thought our build times were short enough that it wouldn't go over the threshold but it was. It's surprisingly easy to trigger the cpu throttling on a micro instance. Would be nice if they could/would average out the cpu usage over a longer rolling window. That'd be perfect for a use case like this (build server) where you're idle the majority of the time but want to max out cpu during the build itself. Seems like the perfect use case for a shared server.