CSE 591, Spring 2016: Energy-Efficient Computing

4/21: Slides for lectures 19, 20, and 21 posted.

CSE 591, Spring 2016: Energy-Efficient Computing

When: Tu Th, 11:30am - 12:50pm
Where: Old CS 2120
Instructor: Anshul Gandhi
Office Hours: Tu 2-3pm and Th 4-5pm (@ CS 347)
TA: Muhammad Wajahat (mwajahat at cs dot stonybrook dot edu)

Course Info

Energy is an important resource for today's computer systems ranging from laptops (think battery life) all the way up to entire data centers and clouds (staggering electricity bills). There has been a lot of recent research on the topic of improving energy-efficiency. This research cuts across different areas of computer science including Computer Architecture (ex: energy-efficient processor design), Networking (ex: putting the network to sleep), Storage (ex: exploiting idle I/O periods to spin down disks), Distributed Systems (ex: capacity provisioning), and Modeling/Analytics (ex: modeling a server's power consumption). This course will cover the recent research trends in energy-efficient computing, focusing specifically on themes and techniques for achieving energy-efficiency in computer systems.

This is a seminar course and will involve research paper discussions and a semester-long project.
Students should read the assigned papers (on average, 2/class) and submit a hard copy of their review for the non-optional paper. The reviews are due before the class begins.
Most, if not all, of the paper discussions will be lead by the instructor. However, students are expected to voice their opinions on the papers to make the class more interactive (=fun).

Grading will be based on submitted reviews, class interaction, and the project.

Syllabus & Schedule

Date Topic Readings Notes
Jan 26 (Tuesday) Introduction, Class logistics None (yay!) We will discuss class logistics and overview of syllabus.
Jan 28 (Thursday) Energy-efficiency basics energy_proportional, EPA
Review not required :)
Scan the EPA report for facts and results, skip the non-technical stuff.
Feb 02 (Tuesday) SPEED: processor reduced_CPU (optional), opt_allocation
Read the reduced_CPU paper first.
For the opt_allocation paper, ignore the appendices and skip over the proofs.
However, read the theorem statements carefully and try to understand what they are saying about the optimal allocation.
Feb 04 (Thursday) SLEEP: full-system power_nap, agile (optional)
Read the power_nap paper before the agile paper.
For the agile paper, don't worry much about sections 4 and 5, and just scan through them quickly.
Feb 09 (Tuesday) SCALING: stateless vs stateful autoscale, cachescale (optional)
Read the autoscale paper first.
For the autoscale paper, Section 4.3 is quite technical. Feel free to scan through it quickly.
Feb 11 (Thursday) No class Career fair day.
Feb 16 (Tuesday) SHARING: distributed vs local energy_routing (optional), softscale
Feb 18 (Thursday) SMARTS: custom-made systems fawn, heteromates (optional)
Feb 23 (Tuesday) No class Anshul is away at a workshop in DC.
Feb 25 (Thursday) SOURCE: renewables sustainable_energy (optional), renewable_cooling
March 01 (Tuesday) SLEEP: processor dreamweaver, barely_alive (optional)
March 03 (Thursday) Project idea presentation Each group will give a short (5-8 mins) presentation about their project idea.
March 08 (Tuesday) SLEEP: network idle_net (optional), somniloquy
sleepless (optional)
Read the idle_net paper first.
The sleepless paper is optional. It is closer to the idle_net paper but the evaluation is done on a larger, more realistic system.
March 10 (Thursday) SLEEP: storage maid, pdc (optional)
March 22 (Tuesday) SLEEP: memory power_page, commercial (optional) Mid-semester grades out.
March 24 (Thursday) SLEEP: sensors sensor_power, solar_embedded (optional), sensor_detect (optional)
March 29 (Tuesday) SCALING: setup time napsac, vmsetuptime (optional)
March 31 (Thursday) No class: Finalize project setup. proposed meeting schedule Meet with instructor to discuss and finalize project setup.
April 05 (Tuesday) No class Anshul is away at a workshop in Germany.
April 07 (Thursday) No class Anshul is away at a workshop in Germany.
April 12 (Tuesday) SCALING: storage rabbit, sierra (optional)
April 14 (Thursday) SCALING: memcache mem_hotspots, dynacache (optional)
April 19 (Tuesday) SCALING: survey autoscaling_survey (optional)
(review not required, but scan through it)
This is a (fairly extensive) survey paper on autoscaling strategies.
April 21 (Thursday) SPEED: power power_capping, power_modeling (optional) Feel free to quickly scan through the control theory part (Sections 4 and 5).
power_modeling deals with how to model server power consumption and, as such, does not really fall under the "SPEED" category.
April 26 (Tuesday) SPEED: memory memscale, memory_dvfs (optional) These are very similar papers, and they were published around the same time.
April 28 (Thursday) SPEED: disks disk_energy, drpm (optional) disk_energy looks at four techniques, while drpm explores one of them in depth.
May 02 (Tuesday) review power_provisioning, power_struggles (optional)


Grading (tentative)

 Please report any errors to the Instructor.