1 / 27

CMPT 886: Special Topics in Operating Systems and Computer Architecture

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

emile
Download Presentation

CMPT 886: Special Topics in Operating Systems and Computer Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CMPT 886: Special Topics in Operating Systems and Computer Architecture Dr. Alexandra Fedorova School of Computing Science SFU

  2. 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

  3. 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?

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

  5. Conventional vs. Multicore Core 0 Core 0 Core 1 Core 2 Core 3 • Conventional processor • Single core • One thread at a time • Multicore processors • Several cores • Many threads simultaneously

  6. 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

  7. 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)

  8. 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

  9. Superior Performance/Watt • Example: • Reduce CPU clock frequency by 20% • Power consumption reduces by 50%! • 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 Core 0 Core 1 0.8x frequency 0.8x frequency

  10. Multicore vs. Unicore • Multicore: • 1.6x throughput increase • No power consumption increase • Single-core: • Given the same power envelope • Potentially 60% less throughput

  11. Transistor density still rising Clock speed isn’t Transistors are used for parallelism: multicore processors Source: Sutter, The Free Lunch is over

  12. 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?

  13. 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

  14. Example I (Architecture) Core 0 Core 0 Core 4 Core 0 ? ? Core 1 Core 1 Core 5 Core 2 Core 2 Core 6 Core 3 Core 3 Core 7 Core 0 ? Core 1 Core 2 Core 4 Core 3 Core 5

  15. 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

  16. Resource Sharing Core 0 Core 0 L2 cache L1 cache L1 cache Core 1 L2 cache L1 cache L3 cache Core 0 L2 cache L1 cache Core 1 L2 cache L1 cache

  17. 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

  18. 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?

  19. 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

  20. 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

  21. 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!

  22. 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

  23. 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

  24. Final Project (cont.) • Commit toa 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

  25. 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

  26. Course Web Site • Syllabus • Wiki • Multicore portal • Technical documentation

  27. Administrivia • Thursday Lab • Sign up for paper presentations • Meet graduate students

More Related