70
NSCU, September 2004 Duke’s Milly Watt Project Carla Ellis Faculty Alvin Lebeck Amin Vahdat (UCSD) Alumni Xiaobo Fan, Ph.D. Heng Zeng, Ph.D. Surendar Chandra, Ph.D Students Sita Badrish Rebecca Braynard Angela Dalton Albert Meixner Shobana Ravi Systems & Architecture

Duke’s Milly Watt Project Carla Ellis

  • Upload
    sela

  • View
    53

  • Download
    3

Embed Size (px)

DESCRIPTION

Faculty Alvin Lebeck Amin Vahdat (UCSD) Alumni Xiaobo Fan, Ph.D. Heng Zeng, Ph.D. Surendar Chandra, Ph.D. Students Sita Badrish Rebecca Braynard Angela Dalton Albert Meixner Shobana Ravi. Duke’s Milly Watt Project Carla Ellis. Systems & Architecture. Milly Watt Motivation. - PowerPoint PPT Presentation

Citation preview

Page 1: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Duke’s Milly Watt ProjectCarla Ellis

Faculty• Alvin Lebeck• Amin Vahdat (UCSD)Alumni• Xiaobo Fan, Ph.D.• Heng Zeng, Ph.D.• Surendar Chandra, Ph.D

Students• Sita Badrish• Rebecca Braynard• Angela Dalton• Albert Meixner• Shobana Ravi

Systems & Architecture

Page 2: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy for computing is an important problem

(& not just for mobile computing)

– Reducing heat production and fan noise

– Extending battery life for mobile/wireless devices

– Conserving energy resources (lessen environmental impact, save on electricity costs)

How does software interact with or exploit low-power hardware?

Milly Watt Motivation

Page 3: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy should be a “first class” resource at upper levels of system design– Focus on Architecture, OS, Networking,

Applications– Energy has a impact on every other resource

of a computing system – it is central.

HW / SW cooperation to achieve energy goals

Milly Watt Vision

Page 4: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy Management Spectrum

• Re-examine interactions between HW and SW, particularly within the resource management functions of the Operating System

• Low level Fine grain Low-power Circuits

Software• High level Coarse grain• OS, compiler or application

HW / SW Cooperation

• Voltage Scaling• Clock gating• Power modes: Turning off HW blocks

Hardware

Page 5: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

I/O Bus

Memory Bus

CPU

Cache

MainMemory

DiskController

Disk Disk

GraphicsController

NetworkInterface

Graphics Network

I/O Bridge

[Intel targets]

Power Budget

LCD

Mem

CPU

Disk WNICOther

Page 6: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Outline

• Introduction and motivation• Milly Watt activities

– ECOSystem Explicitly managing energy via the OS (ASPLOS02, USENIX03)

– Power-aware memory(ASPLOS00, ISLPED01, PACS02, PACS03)

– FaceOff Sensor-based display power management (HOTOS03, Mobisys Context Aware 04)

• Current and future directions

LCD

Mem

CPU

Disk WNICOther

Page 7: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Outline

• Introduction and motivation• Milly Watt activities

– ECOSystem Explicitly managing energy via the OS (ASPLOS02, USENIX03)

– Power-aware memory(ASPLOS00, ISLPED01, PACS02, PACS03)

– FaceOff Sensor-based display power management (HOTOS03, Mobisys Context Aware 04)

• Current and future directions

LCD

Mem

CPU

Disk WNICOther

Page 8: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Outline

• Introduction and motivation• Milly Watt activities

– ECOSystem Explicitly managing energy via the OS (ASPLOS02, USENIX03)

– Power-aware memory(ASPLOS00, ISLPED01, PACS02, PACS03)

– FaceOff Sensor-based display power management (HOTOS03, Mobisys Context Aware 04)

• Current and future directions

LCD

Mem

CPU

Disk WNICOther

Page 9: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy Centric Operating System

(ECOSystem)1. Energy can serve as a unifying concept for managing a

diverse set of resources.– We introduce the currentcy abstraction to represent the energy

resource

2. A framework is needed for explicit monitoring and management of energy.

– We develop mechanisms for currentcy accounting, currentcy allocation, and scheduling of currentcy use

3. We need policies to achieve energy goals.– Need to arbitrate among competing demands and reduce demand

when energy is limited.

LCD

Mem

CPU

Disk WNICOther

Page 10: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Unified Currentcy Model

Energy accounting and allocation are expressed in a common currentcy.

Abstraction for1. Characterizing power costs of accessing

different resources

2. Quantifying overall energy consumption

3. Sharing among competing tasks

Page 11: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

1. Explicitly manage energy use to reach a target battery lifetime.

• Coast-to-coast flight with your laptop• Sensors that need to operate through the night and

recharge when the sun comes up

2. If that requires reducing workload demand, use energy in proportion to task’s importance.

Scenario: • Revising and rehearsing a PowerPoint presentation• Spelling and grammar checking threads• Listening to MP3s in background

Energy Goals

Page 12: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy Goals

1. Explicitly manage energy use to reach a target battery lifetime.

• Coast-to-coast flight with your laptop• Sensors that need to operate through the night and

recharge when the sun comes up

2. If that requires reducing workload demand, use energy in proportion to task’s importance.

Scenario: • Revising and rehearsing a PowerPoint presentation• Spelling and grammar checking threads• Listening to MP3s in background

Page 13: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy Goals

3. Deliver good performance given constraints on energy availability

• Fully utilize the battery capacity within the target battery lifetime with little leftover capacity – no lost opportunities.

• Encourage efficiency in performing desired work.• Address observed performance problems

(e.g. energy-based priority inversions).

Page 14: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Mechanisms in the ECOSystem Framework

Currentcy Allocation

• Epoch-based allocation – periodically distribute currentcy “allowance”

Currentcy Accounting

• Basic idea: Pay as you go for resource use –no more currentcy no more service.

Page 15: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Currentcy Flow

OS

AppApp App

1

1. Determine overall amount of currentcy available per energy epoch.

2. Distribute available currentcy proportionally among tasks.

2

Page 16: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Currentcy Flow

OS

AppApp App

1

2

Dev Dev Dev

3

3. Deduct currentcy from task’s account for resource use.

Page 17: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Device Specific Accounting

• CPU: hybrid of sampling and task switch accounting

• Disk: tasks directly pay for file accesses, sharing of spinup & spindown costs.

• Network: local source or destination task pays based on length of data transferred

Page 18: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

ECOSystem Prototype

• Modifications to Linux on Thinkpad T20• Initially managing 3 devices: CPU, disk, WNIC• Embedded power model:

– Calibrated by measurement– Power states of managed devices tracked

• Orinoco card: doze 0.045W, receive 0.925W, send 1.425W.

Page 19: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Experimental Evaluation V1.0

• Validate the embedded energy model.

• Can we achieve a target battery lifetime?

• Can we achieve proportional energy usage among multiple tasks?

• Assess the performance impact of limiting energy availability.

Page 20: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Achieving Target Battery Lifetime

• Using CPU intensive benchmark and varying overall allocation of currentcy, we can achieve target battery lifetime. 1.4

1.6

1.8

2

2.2

2.4

2.6

1.4 1.6 1.8 2 2.2 2.4 2.6

Target Battery Lifetime (Hours)

Ach

ieve

d B

att

ery

Life

time

(H

ou

rs)

Page 21: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Proportional Energy Allocation

0

0.5

1

1.5

2

2.5

3

3.5

4

70-30 60-40 50-50 40-60 30-70

Ave

Pow

er U

sed

(W)

Ijpeg Netscape

Battery lifetime isset to 2.16 hours(unconstrainedwould be 1.3 hr)

Overall allocation equivalentto an average power consumption of 5W.

Page 22: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Proportional CPU Utilization

0

5

10

15

20

25

30

35

30 40 50 60 70

Currentcy Allocation (%)

CP

U U

tiliz

atio

n (%

)

Max at 5W

Ijpeg

Performance ofcompute boundtask (ijpeg) scalesproportionally withcurrentcy allocation

Page 23: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

But - Netscape Performance Impact

0

5

10

15

20

25

30

35

30 40 50 60 70

Currentcy Allocation (%)

Page

Loa

d Ti

me

(s)

Some applicationsdon’t gracefullydegrade with drastically reducedcurrentcy allocations

Page 24: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

ExperiencesIdentified performance implications of limiting

energy availability that motivate further policy development:

• Mismatches between user-supplied specifications and actual needs of the task

• Scheduling not offering opportunities to spend allocation

• I/O devices and other activity causing a form of inversion

Page 25: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Challenge

To fully utilize available battery capacity within the desired battery lifetime with little or no leftover (residual) capacity.

Devise an allocation policy that balances supply and demand among tasks.

Currentcy conserving allocation.

Page 26: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

OS

Problem: Residual Energy

Allocation Shares

Demand

Caps

Allocations do not reflect actual consumption needs

Page 27: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

OS

Problem: Residual Energy

Allocation Shares

Demand

Caps

A task’s unspent currentcy (above a “cap”) is being thrown away to maintain steady battery discharge. Leftover energy capacity at end of lifetime.

Page 28: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

OS

Currentcy Conserving Allocation

Allocation Shares

Demand

Two-step policy. Each epoch:1. Adjust per-task caps to reflect observed need

• Weighted average of currentcy used in previous epochs.

Caps

Page 29: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

OS

Currentcy Conserving Allocation

Allocation Shares

Demand

2. Redistribute overflow currentcy

Page 30: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Currentcy Conserving Allocation

ExperimentWorkload:

– Computationally intensive ijpeg – image encoder– Image viewer, gqview, with think time of 10

seconds and images from disk • Performance levels out at 6500mW allocation.

– Total allocation of 12W, shares of 8W for gqview (too much) and 4W for ijpeg (capable of 15.5W).

Comparing against total allocation “correction” method in original prototype.

Page 31: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Currentcy Conserving Allocation

Results

<1% remaining capacity

A

B

total alloc

gqview alloc

ijpeg alloc

Page 32: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Challenge

To produce more robust proportional sharing by ensuring adequate spending opportunities.

Develop CPU scheduling that considers energy expenditures on non-CPU resources.

Currentcy-aware scheduling or energy-centric scheduling.

Page 33: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Problem: Scheduling/ Allocation Interactions

• Allocation shares may be appropriately specified and consistent with demand, but the ability to spend depends on scheduling policies that control the opportunities to access resource.

• Priority Inversion – a task with small allocation but large CPU component can dominate a task with larger allocation but demands on other devices.

• Scheduling should be “aware” of currentcy expenditures throughout the system.

Page 34: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy-Centric Scheduling

• The next task to be scheduled for CPU is the one with the lowest amount of currentcy spent in this epoch relative to its share– Captures currentcy spent on any device.

• Dynamic share – weighted by the task’s static share divided by currentcy spent in last epoch.– Compensation for previous lack of spending

opportunities

Page 35: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy-Centric SchedulingExperiment

• Workload: – Computationally intensive ijpeg– Image viewer, gqview, with think time of 10

seconds and disk access (700mW)• Performance levels out at 6500mW allocation.

– Given equal allocation shares, total allocation varied

• Comparing against round-robin and stride based on static share value.

Page 36: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy-Centric SchedulingResults

Gqview power consumption

Page 37: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy-Centric SchedulingResults

Ijpeg power consumption

Page 38: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Benefits of CurrentcyCurrentcy abstraction

• Provides a concrete representation of energy supply and demand – allowing explicit energy/power management.

• Provides unified view of energy impact of different devices – enabling multi-device, system-wide resource management– Comparable, quantifiable, tradeoffs can be expressed

• Encourages analogies to economic models – motivating a rich set of policies.

Page 39: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Contributions• ECOSystem is a powerful framework for

managing energy explicitly as a first-class OS resource.

• Currentcy model is capable of formulating non-trivial energy goals and serving as the basis for solutions– Reducing residual battery capacity when lifetime reached

– Ensuring that scheduling works with currentcy allocation towards proportional energy sharing

– Smoothing out response time variation

– Encouraging greater disk energy efficiency

Page 40: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Power Aware DRAM LCD

Mem

CPU

Disk WNICOther

• Memory with multiple power states has become available

– Fast access, high power– Low power, slow access

• New take on memory hierarchy

• How to exploit this opportunity?

Standby75mW

Active275mW

Power Down1.75mW

Read/Write

Transaction

+7.5 ns

Mobile-RAMPower States

Page 41: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Power State Transitioning

time

requestscompletionof last request in run

gap

phigh

plowph->l pl->h

phighth->l tl->h

tbenefit Ideal case:Assume we wantno added latency

gap th->l + tl->h + tbenefit

Page 42: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Power State Transitioning

time

requestscompletionof last request in run

gap

phigh

plowph->l pl->h

phighth->l tl->h

Threshold based-delays transition down

threshold

On demand case-adds latency oftransition back up

Page 43: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

CPU/$

OS Page Mapping

Allocation

Chip 0

Chip 1

Chip n-1

Power Down

StandbyActive

ctrl ctrl ctrl

Hardware control

Software control

• Assume we access & control each chip individually

• 2 dimensions to affect energy policy: HW controller / OS

• Energy strategy:

– Cluster accesses to already powered up chips

– Interaction between power state transitions and data locality

Power-Aware DRAM Main Memory Design

Page 44: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Power Aware DRAM

Standby180mW

Active300mW

Power Down3mW

Nap30mW

Read/Write

Transaction

+6 ns+6000 ns

+60 ns

RambusRDRAM

Power States

Page 45: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Dual-state HW Power State Policies

• All chips in one base state• Individual chip Active

while pending requests• Return to base power

state if no pending access

access

No pending access

Standby/Nap/Powerdown

Active

access

Time

Base

Active

Access

Page 46: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Quad-state HW Policies

• Downgrade state if no access for threshold time

• Independent transitions based on access pattern to each chip

• Competitive Analysis– rent-to-buy

– Active to nap 100’s of ns

– Nap to PDN 10,000 ns

no access for Ts-n

no access for Ta-s

no access for Tn-p

accessaccess

accessaccess

Active STBY

NapPDN

Time

PDN

ActiveSTBYNap

Access

Page 47: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

CPU/$

OS Page Mapping

Allocation

Chip 0

Chip 1

Chip n-1

ctrl ctrl ctrl

Page Allocation and Power-Aware DRAM

Virtual Memory Page

Physical address determines which chip is accessed

Assume non-interleaved memory

• Addresses 0 to N-1 to chip 0, N to 2N-1 to chip 1, etc.

Entire virtual memory page in one chip

Virtual memory page allocation influences chip-level locality

Page 48: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Page Allocation Polices

Virtual to Physical Page Mapping• Random Allocation – baseline policy

– Pages spread across chips

• Sequential First-Touch Allocation– Consolidate pages into minimal number of chips– One shot

• Frequency-based Allocation– First-touch not always best– Allow (limited) movement after first-touch

Page 49: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

The Design Space

Quad-stateHardware

Dual-stateHardware

RandomAllocation

SequentialAllocation

2Can the OS help?

1Simple HW

3Sophisticated HW

4CooperativeHW & SW

2 statemodel

4 statemodel

Page 50: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Evaluation Methodology

• Metric: Energy*Delay Product– Avoid very slow solutions

• Energy Consumption (DRAM only)– Processor & Cache do affect runtime

• Trace-Driven Simulation– Windows NT personal productivity applications (Etch traces

from U. Washington)– Simplified processor and memory model

• Execution-Driven Simulation– SPEC benchmarks (subset of integer)– SimpleScalar w/ detailed RDRAM timing and power models

Page 51: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Summary of Simulation Results (Energy*Delay product, RDRAM,

ASPLOS00)

Quad-stateHardware

Dual-stateHardware

RandomAllocation

SequentialAllocation

Nap is best dual-state policy60%-85%

Additional10% to 30% over Nap

Improvement not obvious,Could be equal to dual-state

Best Approach:6% to 55% over dual-nap-seq,80% to 99% over all active.

2 statemodel

4 statemodel

Page 52: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Other Questions• How to determine the best thresholds in

memory controller design?• Are more sophisticated OS page allocation (or

migration) policies useful?• How do power-state components (power-

aware DRAM) and dynamic voltage scaling (processors) interact?

• Is there a policy based on adaptive thresholds for transitioning power-state devices (in general -- memory, disks, wireless)?

Page 53: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Naïve Power-awareness

CPU/$

50MHz

100MHz

200MHz

1000MHz

execution slack

Memory

Active

Standby

cache miss

idle

State Trans

MemoryPower StateTransitions

Powerdown

Page 54: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Naïve Power-awareness• Lowest energy achieved at 400MHz

– Memory remains powered on too long in low frequencies– CPU energy too high in high frequencies

• Result conflicts with conventional DVS– Memory has to be taken into account

Page 55: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Aggressive Power-awareness

CPU/$

50MHz

100MHz

200MHz

1000MHz

execution slack

Memory

Active

Standby

cache miss idle

State Trans

MemoryPower StateTransitions

PowerdownPowerdown

Page 56: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Aggressive Power-awareness

• Lowest frequency wins again– CPU energy becomes dominant– Memory energy greatly reduced and stabilizes

• Effective power-aware memory contributes to realizing the potential of DVS

Page 57: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Contributions

• Demonstrated dramatic improvements in energy*delay for power-aware page allocation

• Frequency-based allocation little impact• Device-level general power management

– Based on histogram of gaps in moving window to capture non-stationarity in access pattern

– Efficient tree algorithm updates energy and searches threshold space

• DVS and Power-aware memory interactions explored– Technique for DVS to choose optimal frequency with the

consideration of memory effect

Page 58: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

FaceOff

• Goal: to reduce systemenergy consumption by using low power sensors to match I/O behavior more directly to user behavior and context.

• A display is only necessary if someone is looking at it.

LCD

Mem

CPU

Disk WNICOther

Page 59: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Image Capture

Face Detector

Main ControlLoop Face=on

No Face=off

Page 60: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Prototype

• IBM ThinkPad T21 running RedHat Linux– Base + max CPU power consumption = 18 Watts– Display = 7.6 Watts

• Logitech QuickCam Web Cam– Power Consumption = 1.5 Watts

• X10 ActiveHome Wireless Motion Sensor and Receiver

• Software components:– Image capture, face detection, display power state

control (ACPI)

Page 61: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Face Detection

• Simple skin detection used for prototype

Page 62: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Feasibility Study

• What is the potential for energy savings?– “Best case” scenarios to measure opportunity

• Assume perfect accuracy • User behavior – start it and leave, return on completion.

• What is the effect on System Performance– Network file transfer (113 MB)– CPU intensive process (Linux kernel compile)– MP3 Song (no display necessary)

• How responsive is the system?

Page 63: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

File Transfer

Tradeoff of energy costs: CPU image processing plus camera power vs.display energy during idle timeout.

Page 64: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Energy and Time Comparisons

Energy (J) Default With FaceOff %Savings

File transfer 6795 4791 29.5

Kernel compile 12507 11023 11.9

MP3 4714 3403 28

Time (s) Default With FaceOff %Overhead

File transfer 348.6 351.3 .8

Kernel compile 575 603.5 4.9

MP3 No effect on playback

Page 65: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Responsiveness Timing

Face arrives (or departs)

pollinglatency

detectionlatency

Image acquired detection completedisplay signaled

Total responsiveness latency

Page 66: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Detection Latency Under Load

Workload Average(99% Confidence)

Maximum Minimum

Network Transfer

175±7ms 305ms 116ms

Kernel Compile

230±5ms 669ms 51ms

MP3 154±3ms 229ms 84ms

Page 67: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

On-going Work on FaceOff

• Continue work on optimizing responsiveness & overhead

• Comprehensive user study– Survey of usability– Characterization of “real deployment”

usage patterns• End-to-end experiment

– Energy measurement under realistic usage

Page 68: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

Milly Watt Project: Future Directions

ECOSystem

New platforms:Motes withTinyOS+currentcy

New energy goals:efficiency;applicationcooperation

New devices & policies:integrating the display;

economics-based file system

Distributed systems:sensor networks

Page 69: Duke’s Milly Watt Project Carla Ellis

NSCU, September 2004

For More Information

www.cs.duke.edu/ari/millywatt/

email: [email protected]

Page 70: Duke’s Milly Watt Project Carla Ellis