SYNAR Systems Networking and Architecture Group CMPT 886: Special Topics in Operating Systems and Computer Architecture Dr. Alexandra Fedorova School of.

Slides:



Advertisements
Similar presentations
Intel Multi-Core Technology. New Energy Efficiency by Parallel Processing – Multi cores in a single package – Second generation high k + metal gate 32nm.
Advertisements

1 Chapter 1 Why Parallel Computing? An Introduction to Parallel Programming Peter Pacheco.
MULTICORE PROCESSOR TECHNOLOGY.  Introduction  history  Why multi-core ?  What do you mean by multicore?  Multi core architecture  Comparison of.
Chapter1 Fundamental of Computer Design Dr. Bernard Chen Ph.D. University of Central Arkansas.
Final Class, ECE472 Midterm #2 due today – 1-5% extra credit for written report of Dally’s video Oral presentation of class project: today Graduate students:
Dr. Alexandra Fedorova August 2007 Introduction to Systems Research at SFU.
March 18, 2008SSE Meeting 1 Mary Hall Dept. of Computer Science and Information Sciences Institute Multicore Chips and Parallel Programming.
Lock vs. Lock-Free memory Fahad Alduraibi, Aws Ahmad, and Eman Elrifaei.
SYNAR Systems Networking and Architecture Group CMPT 886: Architecture of Niagara I Processor Dr. Alexandra Fedorova School of Computing Science SFU.
CSCD 555 Research Methods for Computer Science
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
CS 300 – Lecture 2 Intro to Computer Architecture / Assembly Language History.
1 Lecture 1: CS/ECE 3810 Introduction Today’s topics:  logistics  why computer organization is important  modern trends.
SM3121 Software Technology Mark Green School of Creative Media.
INTEL CONFIDENTIAL Why Parallel? Why Now? Introduction to Parallel Programming – Part 1.
Multi-core processors. History In the early 1970’s the first Microprocessor was developed by Intel. It was a 4 bit machine that was named the 4004 The.
Dr. Gheith Abandah, Chair Computer Engineering Department The University of Jordan 20/4/20091.
The Pentium: A CISC Architecture Shalvin Maharaj CS Umesh Maharaj:
Joram Benham April 2,  Introduction  Motivation  Multicore Processors  Overview, CELL  Advantages of CMPs  Throughput, Latency  Challenges.
© 2009 Mathew J. Sottile, Timothy G. Mattson, and Craig E Rasmussen 1 Concurrency in Programming Languages Matthew J. Sottile Timothy G. Mattson Craig.
+ CS 325: CS Hardware and Software Organization and Architecture Introduction.
1 VLSI and Computer Architecture Trends ECE 25 Fall 2012.
Introduction to Parallel Computing. Serial Computing.
Multi Core Processor Submitted by: Lizolen Pradhan
Written by Margo Seltzer Presented by Mark Simko.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
Last Time Performance Analysis It’s all relative
Parallel and Distributed Systems Instructor: Xin Yuan Department of Computer Science Florida State University.
Multi-core architectures. Single-core computer Single-core CPU chip.
Multi-Core Architectures
Multi-core Programming Introduction Topics. Topics General Ideas Moore’s Law Amdahl's Law Processes and Threads Concurrency vs. Parallelism.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
CS/ECE 3330 Computer Architecture Kim Hazelwood Fall 2009.
1 Computer Architecture Research Overview Rajeev Balasubramonian School of Computing, University of Utah
Recognizing Potential Parallelism Introduction to Parallel Programming Part 1.
Outline  Over view  Design  Performance  Advantages and disadvantages  Examples  Conclusion  Bibliography.
SYNAR Systems Networking and Architecture Group CMPT 886: Computer Architecture Primer Dr. Alexandra Fedorova School of Computing Science SFU.
Chapter 1 Performance & Technology Trends Read Sections 1.5, 1.6, and 1.8.
Dr. Alexandra Fedorova School of Computing Science SFU
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
 Introduction to SUN SPARC  What is CISC?  History: CISC  Advantages of CISC  Disadvantages of CISC  RISC vs CISC  Features of SUN SPARC  Architecture.
Multi-core processors. 2 Processor development till 2004 Out-of-order Instruction scheduling Out-of-order Instruction scheduling.
MULTICORE PROCESSOR TECHNOLOGY.  Introduction  history  Why multi-core ?  What do you mean by multicore?  Multi core architecture  Comparison of.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 4: Threads.
SYNAR Systems Networking and Architecture Group CMPT 886: Computer Architecture Primer Dr. Alexandra Fedorova School of Computing Science SFU.
Hardware Trends CSE451 Andrew Whitaker. Motivation Hardware moves quickly OS code tends to stick around for a while “System building” extends way beyond.
Hardware Trends CSE451 Andrew Whitaker. Motivation Hardware moves quickly OS code tends to stick around for a while “System building” extends way beyond.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
Constructing a system with multiple computers or processors 1 ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson. Jan 13, 2016.
Multi-Core CPUs Matt Kuehn. Roadmap ► Intel vs AMD ► Early multi-core processors ► Threads vs Physical Cores ► Multithreading and Multi-core processing.
Conclusions on CS3014 David Gregg Department of Computer Science
Mobile App Development
Chapter1 Fundamental of Computer Design
Multi-core processors
Parallel Computing in the Multicore Era
The University of Adelaide, School of Computer Science
Constructing a system with multiple computers or processors
Multi-core processors
Hyperthreading Technology
The Pentium: A CISC Architecture
CS 179 Project Intro.
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
Adaptive Single-Chip Multiprocessing
Constructing a system with multiple computers or processors
1.1 The Characteristics of Contemporary Processors, Input, Output and Storage Devices Types of Processors.
Parallel Computing in the Multicore Era
Lecture on High Performance Processor Architecture (CS05162)
EE 155 / Comp 122 Parallel Computing
Types of Parallel Computers
Presentation transcript:

SYNAR Systems Networking and Architecture Group CMPT 886: Special Topics in Operating Systems and Computer Architecture Dr. Alexandra Fedorova School 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) Third year at SFU Over 20 publications on research topics related to multicore processors Industrial collaborations with Sun Microsystems, Intel, Google, 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 0Core 1 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

SYNAR Systems Networking and Architecture Group Multicore vs. Unicore Multicore: – 1.6x throughput increase – No power consumption increase Single-core: – Given the same power envelope – Potentially 60% less throughput

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 0 Core 1 Core 2 Core 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 0 Core 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 Sharing Core 0 L2 cache L1 cache Core 0 Core 1 L2 cache L1 cache Core 0 Core 1 L2 cache L1 cache L2 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 (1 homework) 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 Previous years: 2-4 publications out of 4-6 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.) Commit to a project proposal in early February Complete the project by mid-April You have only 2.5months Have to work hard! Expect to dedicate ≈30 hrs/week

SYNAR Systems Networking and Architecture Group Will I Succeed in this Course? You have to work independently! You have to be entrepreneurial! 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 I will stress methodology You will succeed, if you are prepared to work hard What you can or cannot do now does not matter – what matters is how well you learn 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 Thursday Lab Sign up for paper presentations Meet graduate students