21
Somniloquy*: Augmenting Network Interfaces to Reduce PC Energy Usage Ranveer Chandra (Microsoft Research) Yuvraj Agarwal, Rajesh Gupta (UCSD), Victor Bahl, Steve Hodges, James Scott (MSR) *som-nilo-quy (noun): The act or habit of talking while asleep.

Somniloquy Ucl

Embed Size (px)

DESCRIPTION

energy

Citation preview

Page 1: Somniloquy Ucl

Somniloquy*: Augmenting Network Interfaces to Reduce PC Energy Usage

Ranveer Chandra (Microsoft Research)

Yuvraj Agarwal, Rajesh Gupta (UCSD), Victor Bahl, Steve Hodges, James Scott (MSR)

*som-nilo-quy (noun): The act or habit of talking while asleep.

Page 2: Somniloquy Ucl

2

Context: IT Power Use Is Large • Studies show that:

– 67% of office PCs powered up after work hours• “Sleep” modes used in <4% ! [1]

– Home PCs are left on for 34% of the time • 50% of the time they are not being used

• Confirmed by our measurements: – CSE @ UCSD: 600+ desktops left ON (total =700+)

• @150W each ~100kW (25% of total energy) • Energy Cost: $9/Hr or $200/day !

[1] J. Roberson et al. “After-hours Power Status of Office Equipment and Energy use of Miscellaneous Plug-load Equipment. LawrenceBerkeley National Laboratory, Berkeley, California. Report# LBNL-53729-Revised, 2004

Page 3: Somniloquy Ucl

3

Motivating survey

• Motivating survey of 107 computer users

• Respondents regularly left 75% of office PCs and 30% of home PCs on unattended

• Popular apps left running included file sharing, email/IM, remote desktop login and remote file sharing

File download

ing

Email/

IM cli

ent

Network

serve

r of s

ome type

Other applica

tion05

101520253035404550

Home (N=62)

Office (N=47)

%ge

of r

espo

nden

ts st

ating

app

licati

on a

s rea

son

PC is

left

on w

hen

no u

ser i

s pre

sent

What apps do you leave running on your computer?

Page 4: Somniloquy Ucl

4

Saving Power Runs into Usability

• Why do people leave their PCs on? – Maintain desktop, applications left open

• Can be handled by low-power modes (Sleep, Hibernate)

– Occasional access • Remote Desktop, file sharing • Administrative: updates, patches, backups

– Active applications running• Maintaining presence: e.g. incoming Skype call, IM • Long running applications: Web downloads, BitTorrent

Page 5: Somniloquy Ucl

5

Power Management vs. Use Models

• Current design trends:– Hosts (PCs): either Awake (Active) or Sleep (Inactive)

• Power consumed when Awake = 100X power in Sleep! – Network: Assumes hosts are always “Connected” (Awake)

• What users really want: – Provide some functionality of an Awake (active) host… ….While consuming power in Sleep mode?– Resume host to Awake mode only if needed

Change the fundamental distinction between Sleep and Active states…

Page 6: Somniloquy Ucl

6

Somniloquy*: PCs that talk in their sleep

• Somniloquy

• daemon

• Host processor,• RAM, peripherals, etc.

• Operating system, including networking stack

• Apps

• Network interface hardware

• Secondary processor • Embedded

CPU, RAM, flash

• Embedded OS, incl.

networking stack

• wakeupfilters

• Appln stubs

• Host PC

• Augment network interfaces:– Add a separate power domain

• ON when host is asleep • Processor + Memory +

Storage + Network stack– Same MAC/IP Address– Transparent to network,

remote hosts and servers • Wake-up Host when needed

– E.g. Incoming Connection• Handle some applications

when PC remains asleep– Using “application stubs”

*som-nilo-quy (noun): The act or habit of talking while asleep.

Page 7: Somniloquy Ucl

7

Somniloquy Prototype

• Prototype uses “gumstix” platform– PXA270 processor with full TCP/IP stack– USB connection to PC for sleep

detection/wakeup trigger, power whilst asleep, and IP networking for data

• Wired and Wireless versions • 1NIC version follows initial vision of

augmented NIC, where all data goes via gumstix even when PC is awake

• 2NIC version uses PC’s internal interface while it is awake, and allows for simpler legacy-friendly support

Wired-1NIC prototype

Wireless-2NIC prototype

Page 8: Somniloquy Ucl

8

USB Interface (Wakeup Host + Status + Debug)

USB Interface (power + USBNet)

100Mbps Ethernet Interface

Processor

SD Storage

Prototype

Page 9: Somniloquy Ucl

9

Somniloquy in Operation (1)

• Maintain reachability – “ping”, ARP queries, maintain DHCP

0 10 20 30 40 50 60 70 800

1

2

3

4

5

6

7

8

Time (seconds)

ICM

P ec

ho-r

espo

nses

La

tenc

y (m

s) Desktop going to Sleep

4 secondsDesktop resuming from Sleep

5 seconds

Page 10: Somniloquy Ucl

10

Somniloquy in Operation (2)

• Wake-up host on any user defined “filter”– E.g. incoming VoIP call, RDP request

• Specified at any layer of the network stack – E.g. from a particular IP (layer-3) or MAC (layer-2)

• Measured “user perceived” increase in latency – 3s – 10s across all tested applications– E.g. VoIP call takes 8 seconds vs 4 seconds to set up

Page 11: Somniloquy Ucl

11

“Setup” latency for our prototypes

• Measured time till user-perceived response for RDP, SMB and VOIP

• For each, incoming TCP SYN caused wakeup

• Additional latency ranges from 3-10s for all prototype versions

• As a proportion of the resulting computing session, this is OK

Wire

d-1N

IC

Wire

d-2N

IC

Wire

less

-2N

IC

Wire

d-1N

IC

Wire

d-2N

IC

Wire

less

-2N

IC

Wire

d-1N

IC

Wire

d-2N

IC

Wire

less

-2N

IC

Wire

d-1N

IC

Wire

d-2N

IC

Wire

less

-2N

IC

Remote desktop connect

(RDP)

List remote directory (SMB)

Remote file copy (SMB)

Call connect (VOIP)

0

5

10

15

20

25

30

35

40Asleep (Somniloquy)

Awake

Tim

e (s

) till

appl

icati

on-le

vel t

ask

com

pleti

on

Page 12: Somniloquy Ucl

12

What about active applications ?

• P2P file sharing (BitTorrent), background downloads, maintaining IM presence

• Need application specific code on the NIC – Limited processing, storage ?– Cannot run the full application

• Offload part of the applications: i.e. “stub” code– Generate “stub” code manually (for now..)

Page 13: Somniloquy Ucl

13

Somniloquy in Operation: Web download Stub

• Run web download “stub” on the gumstix – 2GB SD storage, download when PC is asleep – Wake-up PC and upload to PC when needed

– 92% less energy than using the host PC for download!

3 279 555 831 11071383165919350

50

100

150

200Host Only Somniloquy

Time (seconds)

Pow

er C

onsu

mpti

on

(Watt

s)

Page 14: Somniloquy Ucl

14

Power Savings

• Our gumstix prototype:– Draws 250mW (idle) to 1.6W

(network flood)

• Test Desktop, – Power drops from >100W to

<5W, i.e. 620kWh saved per year (US$56, 378 kg CO2)

• Test Laptop, – Power drops from >11W to

~1W, battery life increases from <6 hours to >60 hours

Dell Optiplex 745 Power Consumption

Page 15: Somniloquy Ucl

15

Summary

• Somniloquy: Augments NICs – Network connected while PC is asleep

• Enables Energy savings:– Millions of office PCs (e.g. for RDP, File sharing, updates– Home PCs (e.g. P2P file shares, media centers)

• Savings of ~100W per desktop!

Page 16: Somniloquy Ucl

16

Current Work:

• Enterprise environments:– Adding hardware to desktop PCs costly– Enterprises: management, maintenance costs

• Somniloquy without adding hardware ?– Yes - It’s possible! – However, need some help from the network – Stubs : Can we generate them automatically ?

• Home desktops/Laptops: Somniloquy still needed

Page 17: Somniloquy Ucl

17

Thank you!

Questions ?

Page 18: Somniloquy Ucl

18

Backup Slides

Page 19: Somniloquy Ucl

19

Somniloquy*: PCs that talk in their sleep

• Augment network interfaces such that: – Add a separate power domain

• ON when host is asleep • Processor + Memory +

Storage + Network stack– Masquerade as the host itself

• Transparent to: – End hosts and applications – Network infrastructure – Remote servers

*som-nilo-quy (noun): The act or habit of talking while asleep.

Wired prototype

Wireless prototype

Page 20: Somniloquy Ucl

20

Current Work (2):

• Instrumenting CSE: – Detailed power monitoring!– JIGSAW except for power – How much is HVAC power? Desktops? – How much can we reduce?

Page 21: Somniloquy Ucl

21

Wake-on-LAN - Why it doesn’t work

• Requires BIOS/Operating System support • Requires router infrastructure support

– Cannot go across subnets, (subnet broadcast)• Granularity is very coarse

– Too few or too many wakeups• Very limited in functionality

– Cannot handle application stubs