CMPT 886: Special Topics in Operating Systems and Computer Architecture

Post on 25-Feb-2016

30 views 0 download

Tags:

description

CMPT 886: Special Topics in Operating Systems and Computer Architecture. Dr. Alexandra Fedorova School of Computing Science SFU. Meet the Instructor. Ph.D. in Computer Science from Harvard, 2006 Dissertation on operating system design for multicore processors - PowerPoint PPT Presentation

Transcript of CMPT 886: Special Topics in Operating Systems and Computer Architecture

SYNAR Systems Networking and Architecture GroupSYNAR

Systems Networking and Architecture Group

CMPT 886: Special Topics in Operating Systems and

Computer Architecture

Dr. Alexandra FedorovaSchool of Computing Science

SFU

SYNAR Systems Networking and Architecture Group

Meet the Instructor• Ph.D. in Computer Science from Harvard, 2006• Dissertation on operating system design for multicore processors• Concurrently with Ph.D., an intern at Sun Labs (3 years)• 9 US patent applications• First semester at SFU: Spring 2007• Industrial partnership with Sun Microsystems and Electronic Arts

SYNAR Systems Networking and Architecture Group

Course Topic• Multicore processors– New type of computer architecture– Dominates new processor market– Desktops, servers, mobile devices, etc. – Almost all new processors are multicore

• Many research problems to solve– How to design software for these chips? – How to design the chips themselves?– How to structure hardware/software interaction?

SYNAR Systems Networking and Architecture Group

Today

• Introduction to multicore processors• Examples of research problems• Overview of the course

SYNAR Systems Networking and Architecture Group

Conventional vs. Multicore

Core 0

Conventional processor• Single core• One thread at a time

Core 0

Core 1

Multicore processors• Several cores• Many threads simultaneously

Core 2

Core 3

SYNAR Systems Networking and Architecture Group

The Multicore Revolution• Most new processors are multicore• intel.com: Most processors shipped are multicore:– 2006: 75% for desktops, 85% for servers– 2007: 90% for desktop and mobile, 100% for servers

• Everyone’s doing it– Sun Microsystems Rock, Niagara 1, Niagara 2– IBM Power4, Power5, Power6, Cell– AMD Quad Core (Barcelona)– Embedded: ARM

SYNAR Systems Networking and Architecture Group

Why Multicore?

• Building conventional chips no longer profitable• How do you speed up a conventional chip? – Increase its clock frequency

• No longer feasible:– Increasing clock speed increases power

consumption out of proportion– Chips are too expensive to build (errors)– Too expensive to operate (energy consumption)

SYNAR Systems Networking and Architecture Group

Multicore is the Answer!

• Instead of using one large fast core…• Use many smaller, simpler cores• Collectively, they use less power• Collectively, they give more computing power

SYNAR Systems Networking and Architecture Group

Superior Performance/Watt• Example:– Reduce CPU clock frequency by 20%– Power consumption reduces by 50%!

Core 0 Core 10.8x frequency 0.8x frequency

• Put two 0.8 frequency cores on the same chip

• Get 1.6 times the computation at the same power consumption

0.5x power 0.5x power

SYNAR Systems Networking and Architecture Group

Multicore vs. Unicore

• Multicore:– 1.6x throughput increase– No power consumption increase

• Single-core:– 1.2x throughput increase– 1.75x power increase

SYNAR Systems Networking and Architecture Group

Source: Sutter, The Free Lunch is over

Transistor density still

rising

Clock speed isn’t

Transistors are used for

parallelism: multicore processors

SYNAR Systems Networking and Architecture Group

Multicore: State of Affairs

• Multicore processors are here• Operating systems and applications run on

them unmodified• Why do we need to do research on them?

SYNAR Systems Networking and Architecture Group

The Multicore Challenge

• Architecture– We do not yet know what’s the best way to build

these processors• Resource sharing– We need to manage more shared resources than

before• Programmability– Everyone must run multithreaded applications now,

and this is hard

SYNAR Systems Networking and Architecture Group

Example I (Architecture)

Core 0Core 0Core 1Core 2Core 3

Core 0

Core 1

Core 2

Core 3

Core 4

Core 5

Core 6

Core 7

? ?

Core 2

Core 3

Core 4

Core 5

?Core 0Core 1

SYNAR Systems Networking and Architecture Group

The Multicore Challenge

• Architecture– We do not yet know what’s the best way to build

these processors• Resource sharing– We need to manage more shared resources than

before• Programmability– Everyone must run multithreaded applications now,

and this is hard

SYNAR Systems Networking and Architecture Group

Resource SharingCore 0

L2 cache

L1 cache

Core 0

Core 1L2 cache

L1 cache

L1 cache

Core 0

Core 1

L2 cacheL1 cache

L1 cacheL2 cache

L3 cache

SYNAR Systems Networking and Architecture Group

The Multicore Challenge

• Architecture– We do not yet know what’s the best way to build

these processors• Resource sharing– We need to manage more shared resources than

before• Programmability– Everyone must run multithreaded applications now,

and this is hard

SYNAR Systems Networking and Architecture Group

Programmability

• How do you write multithreaded code?• Is it easy? • In the past, writing multithreaded code is the

prerogative of experienced programmers• Now everyone has to do it• Can we make this easier?

SYNAR Systems Networking and Architecture Group

Summary

• Multicore systems– They are everywhere: servers, desktops, small

devices– Must understand them

• Plenty of research on multicore systems– System software (OS, compilers, runtimes)– Architecture– Analytical modeling– Applications

SYNAR Systems Networking and Architecture Group

Class Structure• Learn about multicore research– Read and critique papers – Paper summaries, presentations

• Learn how to do multicore research– Discuss papers, think about new ideas– Analyze papers– Learn how to use research tools (3 homeworks)

• Do multicore research– A research project

SYNAR Systems Networking and Architecture Group

Research Project

• A unique experience: getting a project done from start to end

• Goal: generate a publication• Last year: four publications out of six projects• Gives you confidence as a grad student• Improves your resume• Challenging! You will learn a lot!

SYNAR Systems Networking and Architecture Group

What Is Expected from You

• Expect to work hard– But you’ll be glad you did this later

• Papers will be difficult to read at first (3-5 hours/paper)– Will get easy later

• Reward: You will be comfortable at leading your own research in this area

SYNAR Systems Networking and Architecture Group

Final Project

• You can choose from a list of existing topics• Or create your own• Some projects are very well specified (like an

undergraduate course project)• Others are more open-ended (hint: an

opportunity to be creative)• We have systems and tools you’ll need for the

project

SYNAR Systems Networking and Architecture Group

Final Project (cont.)

• Submit a project proposal in early February• Complete the project by early April• You have only two months• Have to work hard!• Expect to dedicate ≈15-20 hrs/week

SYNAR Systems Networking and Architecture Group

Will I Succeed in this Course?

• You have to work independently!• Take full responsibility for your project• I will help, but I cannot do it for you• I do not have all the answers• Maybe there is no answer – the goal is to learn• You will succeed, if you are prepared to work hard• What you can or cannot do now does not matter• The course is designed to train you

SYNAR Systems Networking and Architecture Group

Course Web Site

• Syllabus• Wiki• Multicore portal• Technical documentation

SYNAR Systems Networking and Architecture Group

Administrivia

• Fill out FASnet account forms• Sign up for paper presentations