Round Robin Scheduling Not Power-Efficient
Via_Patrino writes "While having to distribute load between several servers, round robin, or any other technique that balances load equally, is the most common approach because of its simplicity. But a recent study shows that trying to accumulate load on some servers can improve energy efficiency because the other servers will be mostly unused during off-peak periods and then able to make better use of power saving methods. Specially, where load involves lots of concurrent power-consuming TCP connections, which was the case in the study, a new load-balancing algorithm resulted in an overall 30% power savings. Here's the paper (PDF)."
So if we're willing to sacrifice speed for energy savings, shouldn't we just use the bare minimum number of computers that can handle the workload without crashing?
This problem shows up in many places.
technical writing / development
I don't think that we should go down this road again - why don't we talk about religion or politics, instead?
More
Just switch them off...
If the load on your boxes is below a threshold, remove one of them from the load balance list, wait for connections to end, or migrate the processes off to another machine, and switch it off. When the load is above a certain threshold, you power on an additional node, configure it for whichever service and add it to the load balancer.
Oh come on people, you call yourselves engineers? It really isn't that difficult.
Deleted
Operators of multiple steam boilers have been dealing with this problem for a century. The number of boilers fired up is adjusted with demand, with the need for some demand prediction because it takes time to get steam up. This was done manually for decades; now it's often automated.
The same thing applies to multiple HVAC compressors. Usually there's a long-term round-robin switch so that the order of compressor start is rotated on a daily or weekly basis to equalize wear.
More and more, IT is becoming like stationary engineering.
This is a very cool idea, and I don't think it will affect usability too much either. As long as the load balancer keeps tabs on system loading, via snmp or something, it can turn on/off machines based on need.
Assuming your system scales smoothly, i.e. gets proportionally slower as the system load starts to exceed processing capacity. For example, a process will always take 100ms as long as there is CPU time to spare, but once the CPU gets to 100% utilization, you have to start time slicing more processes, that 100ms starts to be 150ms. The load balancer can spin up a new server an start bring down the processing times.
This is an obvious solution to an obvious problem, but until now, we've just never had to examine it.
I believe your calculations are wrong. It's understandable, though, since soccer parenting is a fairly unique branch of mathematics.
First off, you're assuming a standard car with 1 adult driver and 4 passengers; instead, you should be using an SUV with a capacity of 6-8, including driver.
(Result: 4-5 vehicles)
Next, you have to consider that not all parents will attend every game. The primary reason that soccer moms drive SUVs is that they must occasionally transport several of their child's teammates to a game (or, worse, to practice!) when their turn comes up in the rotation. Therefore, you only need enough SUVs to cover the number of child passengers, and the number of adults will follow.
(Result: 2-3 vehicles)
However, you might recall that the other reason that soccer moms drive SUVs is that they often have additional children that have not yet reach sports playing age, and must be transported along with the parent, in a car seat (which, in the case of a standard car, would reduce passenger capacity by at least 20% by rendering the back center seat useless.) Assume that approximately 1 in 3 soccer moms have an additional child to transport, and the child adds to the overall passenger count.
(Result: 3-4 vehicles)
Finally, realizing that the overloaded schedule and priorities of child + parent create scheduling conflicts, it is impossible to get optimal performance. At least 1 child per SUV will be late, leaving a seat empty and requiring another parent with car to tranport them.
(Result: 6-8 vehicles)
The result is a range of possible values, but your initial calculation of 6 vehicles is optimistic at best.
Did I say overlords? I meant protectors.