These slides are taken from a research paper the PSL group wrote while under the direction of Dr. Vijay Garg at the Universtiy of Texas at Austin. The abstract is provided below.
In this paper we explore exploitation of latency bounds in order to gain energy efficiency in load balancing applications. We are proposing an energy aware job scheduler that uses vary-on, vary-off features in order to maximize time spent at peak utilization, while maintaining bounded latency. Computing resources will either be at load saturation(highest work per joule) or off. The premise being that servers are most efficient at peak utilization, measured in terms of energy per calculation. We explore the efficiency gains achieved through this approach and compare our results to other methods.
Exploiting latency bounds for energy efficient load balancing
1. Exploiting latency bounds for
energy efficient load balancing
Cruz Monrreal, Daniel Jones,
Michael May and Mohit Taneja
The University of Texas at Austin
2. Overview
● Problem
● State of server power (lack of power
proportionality)
● Inspiration
● Current Solutions
● Assumptions
● Our Solution
● Comparisons of results
● Limitations of our solutions
● Future prospects
● Q&A
3. Description of Problem
Current server implementations are power
inefficient during low load hours.
Many requests do not need to be serviced as
fast as possible thus have an acceptable stall
period.
4. System Power Consumption
Source - http://static.usenix.org/events/hotpower08/tech/full_papers/rivoire/rivoire_html/
5. System Power Consumption
Table 1 - Number of Cores utilized to Power Usage
# of Cores Power (W)
0 0
1 270
2 300
3 320
4 330
8. Assumptions - Model
4 core machine
3 servers total
1 job saturates a core
Instant on/off
No background tasks
9. Assumptions - Model (Cont)
Load generator simulates sending variable
time jobs (service requests) to load balancer.
Load Scheduler distributes jobs to servers.
Server simulates running job by sleeping the
given time.
Server sends number of cores running back to
load balancer with its own timestamp.
10. Current Solutions
No Power management (Round Robin)
Basic Power management (Round Robin)
Advanced Power management
11. Current Solutions - No Power
Management
Load Scheduler
uniformly schedules
jobs to each server in
sequence
Problems:
Lots of time spent in idle
Few cores used = low
efficiency
12. Current Solutions - Round Robin w/o
Power Management
Load Scheduler
uniformly schedules
jobs to each server in
sequence
Turns off unused
machines
Problems:
Few cores used = low
efficiency
13. Current Solutions - Round Robin w/
Server Toggling
Load Scheduler
uniformly schedules
jobs to each server by
sending 4 jobs at a
time sequentially.
Turns off unused
servers.
Problems:
Does not fully utilize latency
14. Overview of Solution
If any servers are running but not full, the load
balancer will send a job to the server with the
most jobs running.
If all servers are full on/off than the load
balancer will wait the given stall time until
sending a job to an off server (thus turning it
on).
15. Comparisons
Run at average load = 25%,50%,75%,100%
Vary job time around average load job time.
Example: 25% load time
Job time = 8-12 milliseconds
Stall time = 500 milliseconds
Time between jobs = 2-8 milliseconds