33
Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison http://www.cs.wisc.edu/vertical

Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Embed Size (px)

DESCRIPTION

Department of Computer Science 3 or maybe not so good times….

Citation preview

Page 1: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Get the Parallelism out of my Cloud

Karu Sankaralingam and Remzi H. Arpaci-Dusseau

University of Wisconsin-Madisonhttp://www.cs.wisc.edu/vertical

Page 2: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

The Good Old Times

2

Hardware drives Softwarehorse pulls the cart

Page 3: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

3

or maybe not so good times….

Page 4: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

New World?

4

Multi-core drives bloated Software?

Page 5: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

5

Do (real) developers and users care?What does it provide to end-users?

Who is the end-user?

Page 6: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

6

Can we exploit some synergistic trends…Cloud + Multicore = ?

Page 7: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Cloud + Devices

7

Page 8: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

8

Users (billions)

Average Joe programmer

Gurus (1271)

100 million

Cloud + Devices

Page 9: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Myth vs. Reality

9

i. Hardware drives Softwareii. Multicore everywhere

iii. Everyone must be a parallel programmer

Page 10: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Primary driver for software:– Efficiency and thus cycles were precious– Hardware folks have been hard at work– Counting cycles is no longer the developer’s

primary worry

Hardware Drives Software

10

Page 11: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Today’s development is at a high-level of abstraction (figuratively and literally at the cloud level):– Google’s 1st hit for lamp?– Django, Ruby, AJAX– Primary driver:

• Laziness - write as little code as possible• Don’t repeat yourself (DRY)• Duplication is Evil

Hardware Drives Software

11

Page 12: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Does Hardware drive Software? Software trends driven by:

– Development productivity– What end-users want

Maybe software is driving hardware?– Intel SCC, Larrabee

Software trends have become decoupled?

12

Page 13: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Multicore Everywhere

13

Page 14: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Multicore Everywhere

14

Voltage scaling “stops”

Number of coresToday 2014 2018

Mobile-devices 1 3-4 9-10

Page 15: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Multicore Everywhere

15

Cloud-driven free performance

Page 16: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Parallel Hardware All Parallel Programmers

Parallelism is a great challenge, but:– disruptive (change undergrad curriculum?)– if necessary for multi-core,

we probably needed it solved yesterday– Very hard

If possible, lets not solve it, because:– disruptive; if necessary, for multi-core we needed it solved

yesterday; very hard– Lets leave it as an open problem – May not be necessary

16

Page 17: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

17

Cloud + Devices Parallelism Unnecessary (client-side)

Page 18: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

18

Users (billions)

Average Joe programmer

Gurus (1271)

100 million

Cloud + Devices

Abundant concurrency at server

Programmer in cloud

Simple clients

Page 19: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

We probably agree that…

19

Efficiency is a primary goal…If efficiency is a primary goal…The fact that so much code is written at higher and higher levels of software may have system-wide implications…

… motivates a vertically integrated approach?

Page 20: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Data-Centric Concurrency Simple hardware, because of s/w model Simple s/w, because done at high-level Specialization for efficiency

Page 21: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Some Implications

21

Efficiency is a primary goal

ComputationSpecialization

ConcurrencyCoherenceScheduling

Using the CloudBeyond C & Java?

Page 22: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Hardware: Exploit Software Trends Use processors for computation

– 128 ALUs consume less area than Atom’s L1 data-cache

– Specialization is possible Map software abstraction to hardware

– Staged databases– PLUGs map data-structures to hardware

22

Page 23: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Software: exploit app. trend Concurrency management

Global resource management

Storage– On devices– On cloud

23

Page 24: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Education Continue with C, Java, assembly? Or parallelism?

– Some (small) number of programmers must wrestle with parallelism

– Should it be pervasive? Or Cloud: Joe programmer is at this level

– What higher level languages?– What abstractions, mechanisms, skills?

24

Page 25: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Conclusion Today’s processor is very capable…

– This talk created and given on a $220 netbook

S/W & programmer driven by productivity– Developing at cloud-level already

Hardware must follow the S/W trend

Should we rethink roll of parallelism?

25

Page 26: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Questions*

26

* Remzi is to blame for the things you disagree with…

Page 27: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

27

Page 28: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Must Solve this Equation

28

Cloud computing Multicore

DCC

Page 29: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

29

Ecosystem of Devices + CloudUsers like it (want it)

Simple hardware and simple software

Page 30: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Must Solve this Equation

30

Cloud computing Multicore

??

Page 31: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

One solution…

31

??Does it exploit cloud + multicore synergy?

Do (real) developers care?What does it provide to end-users?

Page 32: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Trends

Driven by energy efficiency Hardware guys got lazy

32

Multicore

Page 33: Department of Computer Science Get the Parallelism out of my Cloud Karu Sankaralingam and Remzi H. Arpaci-Dusseau University of Wisconsin-Madison

Department of Computer Science

Trends

Easy to deploy software Easy to deploy hardware Simple devices to access

the cloud

33

Cloud computing