Bev Bachmayer Software and Solutions group With special thanks to Matthew Wolf Georgia Technical Universitiy Pacifying the Pandora's Box of Parallelism:

Slides:



Advertisements
Similar presentations
Shared-Memory Model and Threads Intel Software College Introduction to Parallel Programming – Part 2.
Advertisements

The Brave New World of Software Adam Kemp Staff Software Engineer National Instruments.
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
Multi-core systems System Architecture COMP25212 Daniel Goodman Advanced Processor Technologies Group.
MULTICORE PROCESSOR TECHNOLOGY.  Introduction  history  Why multi-core ?  What do you mean by multicore?  Multi core architecture  Comparison of.
Copyright © 2009 Intel Corporation. All rights reserved. Intel and Intel Education are trademarks or registered trademarks of Intel Corporation or its.
Chapter1 Fundamental of Computer Design Dr. Bernard Chen Ph.D. University of Central Arkansas.
SYNAR Systems Networking and Architecture Group CMPT 886: Special Topics in Operating Systems and Computer Architecture Dr. Alexandra Fedorova School of.
Revisiting a slide from the syllabus: CS 525 will cover Parallel and distributed computing architectures – Shared memory processors – Distributed memory.
What Great Research ?s Can RAMP Help Answer? What Are RAMP’s Grand Challenges ?
Copyright © 2006, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners Intel® Core™ Duo Processor.
INTEL CONFIDENTIAL Why Parallel? Why Now? Introduction to Parallel Programming – Part 1.
Lecture 37: Chapter 7: Multiprocessors Today’s topic –Introduction to multiprocessors –Parallelism in software –Memory organization –Cache coherence 1.
Intel® Processor Architecture: Multi-core Overview Intel® Software College.
INTEL CONFIDENTIAL Parallel Decomposition Methods Introduction to Parallel Programming – Part 2.
Lecture 2 : Introduction to Multicore Computing Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
Chapter1 Fundamental of Computer Design Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2010.
Computer System Architectures Computer System Software
FINAL DEMO Apollo Crew, group 3 T SW Development Project.
Recognizing Potential Parallelism Intel Software College Introduction to Parallel Programming – Part 1.
1 Intel ® Teach ST & ITA Summit Copyright © 2010 Intel Corporation. All rights reserved. Intel, the Intel logo, and the Intel Teach Program are trademarks.
Introduction to Parallel Computing. Serial Computing.
1 Intel® Many Integrated Core (Intel® MIC) Architecture MARC Program Status and Essentials to Programming the Intel ® Xeon ® Phi ™ Coprocessor (based on.
LOGO Multi-core Architecture GV: Nguyễn Tiến Dũng Sinh viên: Ngô Quang Thìn Nguyễn Trung Thành Trần Hoàng Điệp Lớp: KSTN-ĐTVT-K52.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
Parallel and Distributed Systems Instructor: Xin Yuan Department of Computer Science Florida State University.
INTEL CONFIDENTIAL, FOR INTERNAL USE ONLY 1 Intel® Engage Community For educators dedicated to transforming K-12 classrooms
Multi-Core Architectures
Uncovering the Multicore Processor Bottlenecks Server Design Summit Shay Gal-On Director of Technology, EEMBC.
Multi-core Programming Introduction Topics. Topics General Ideas Moore’s Law Amdahl's Law Processes and Threads Concurrency vs. Parallelism.
© 2008 CILK ARTS, Inc.1 Executive Briefing: Multicore- Enabling SaaS Applications September 3, 2008 Cilk++, Cilk, Cilkscreen, and Cilk Arts are trademarks.
1 Thread level parallelism: It’s time now ! André Seznec IRISA/INRIA CAPS team.
Harshad Deshpande Asia Pacific & Japan Program Manager Intel Software & Solutions Group Intel Academic Community Program.
Parallel Processing - introduction  Traditionally, the computer has been viewed as a sequential machine. This view of the computer has never been entirely.
Chapter 2 Parallel Architecture. Moore’s Law The number of transistors on a chip doubles every years. – Has been valid for over 40 years – Can’t.
Nicolas Tjioe CSE 520 Wednesday 11/12/2008 Hyper-Threading in NetBurst Microarchitecture David Koufaty Deborah T. Marr Intel Published by the IEEE Computer.
SJSU SPRING 2011 PARALLEL COMPUTING Parallel Computing CS 147: Computer Architecture Instructor: Professor Sin-Min Lee Spring 2011 By: Alice Cotti.
Integrating and Optimizing Transactional Memory in a Data Mining Middleware Vignesh Ravi and Gagan Agrawal Department of ComputerScience and Engg. The.
Recognizing Potential Parallelism Introduction to Parallel Programming Part 1.
Outline  Over view  Design  Performance  Advantages and disadvantages  Examples  Conclusion  Bibliography.
Parallel Processing Sharing the load. Inside a Processor Chip in Package Circuits Primarily Crystalline Silicon 1 mm – 25 mm on a side 100 million to.
Dr. Alexandra Fedorova School of Computing Science SFU
CS162 Week 5 Kyle Dewey. Overview Announcements Reactive Imperative Programming Parallelism Software transactional memory.
INTEL CONFIDENTIAL Shared Memory Considerations Introduction to Parallel Programming – Part 4.
1. 2 Pipelining vs. Parallel processing  In both cases, multiple “things” processed by multiple “functional units” Pipelining: each thing is broken into.
Shashwat Shriparv InfinitySoft.
Multi-core processors. 2 Processor development till 2004 Out-of-order Instruction scheduling Out-of-order Instruction scheduling.
Intel ® Education K-12 Resources Copyright © 2010 Intel Corporation. All rights reserved. Intel, the Intel logo, and the Intel Education Initiative are.
Thinking in Parallel – Implementing In Code New Mexico Supercomputing Challenge in partnership with Intel Corp. and NM EPSCoR.
MULTICORE PROCESSOR TECHNOLOGY.  Introduction  history  Why multi-core ?  What do you mean by multicore?  Multi core architecture  Comparison of.
Computer Organization CS224 Fall 2012 Lesson 52. Introduction  Goal: connecting multiple computers to get higher performance l Multiprocessors l Scalability,
Multi-core, Mega-nonsense. Will multicore cure cancer? Given that multicore is a reality –…and we have quickly jumped from one core to 2 to 4 to 8 –It.
Gauss Students’ Views on Multicore Processors Group members: Yu Yang (presenter), Xiaofang Chen, Subodh Sharma, Sarvani Vakkalanka, Anh Vo, Michael DeLisi,
Intel ® Education Viewer Overview Download the latest version of this presentation.
Hardware Trends CSE451 Andrew Whitaker. Motivation Hardware moves quickly OS code tends to stick around for a while “System building” extends way beyond.
Thinking in Parallel - Introduction New Mexico Supercomputing Challenge in partnership with Intel Corp. and NM EPSCoR.
Hardware Trends CSE451 Andrew Whitaker. Motivation Hardware moves quickly OS code tends to stick around for a while “System building” extends way beyond.
Tuning Threaded Code with Intel® Parallel Amplifier.
1 A simple parallel algorithm Adding n numbers in parallel.
MAHARANA PRATAP COLLEGE OF TECHNOLOGY SEMINAR ON- COMPUTER PROCESSOR SUBJECT CODE: CS-307 Branch-CSE Sem- 3 rd SUBMITTED TO SUBMITTED BY.
C. Murad Özsert Intel's Tera Scale Processor Architecture.
Intel ® Teach Program Copyright © 2010 Intel Corporation. All rights reserved. Intel, the Intel logo, Intel Education Initiative and Intel Teach Program.
Feeding Parallel Machines – Any Silver Bullets? Novica Nosović ETF Sarajevo 8th Workshop “Software Engineering Education and Reverse Engineering” Durres,
Lynn Choi School of Electrical Engineering
Welcome: Intel Multicore Research Conference
Chapter1 Fundamental of Computer Design
Multi-Processing in High Performance Computer Architecture:
Parallel Processing Sharing the load.
Presentation transcript:

Bev Bachmayer Software and Solutions group With special thanks to Matthew Wolf Georgia Technical Universitiy Pacifying the Pandora's Box of Parallelism: Intel's Curriculum Program for Multi-Core and Multithreaded Programming

Agenda Moving to massively parallel environment Intel Academic community

3 Today’s Processors Designed Within New Metrics Moore’s Law continues to be validated Multiple cores on-die has become the standard to deliver performance at reasonable power 10s and 100s of Cores will happen Intel Research Chip: 80 core Polaris Intel® Core™ 2 Duo (Merom, 65nm Process) L2 4 Cores L2 2 Cores Intel® Core™ 2 Duo (Penryn, 45nm Process)

4 10s and 100s of Cores – Becoming a Reality Core Cache 50% 65nm, 4 Cores 1V, 3GHz 10mm die, 5mm each core Core Logic: 6MT, Cache: 44MT Total transistors: 200M 10mm 45nm 8 Cores, 1V, 3GHz 3.5mm each core Total: 400MT 10mm 32nm 16 Cores, 1V, 3GHz 2.5mm each core Total: 800MT 10mm 22nm 32 Cores, 1V, 3GHz 1.8mm each core Total: 1.6BT 10mm 16nm 64 Cores, 1V, 3GHz 1.3mm each core Total: 3.2BT Note: the above pictures don’t represent any current or future Intel products

5 Where Are We Heading with Many Core? Pentium® II Architecture Pentium® 4 Architecture Pentium® Architecture Merom 1.E+06 1.E E+08 1.E+09 1.E+10 1.E+11 1.E+12 1.E+13 1.E+14 1.E Flops Pentium® III Architecture Tera Peta Giga Projected Multi/Many Core Performance Source: Intel Penryn (2H ’07)

6 SW “joins HW” to lead Performance 65nm process nm 20n m 45nm process nm process nm 22nm process nm Moore’s Law continues transistor density 2X every 24 months But… SW cannot “just” rely on increasing clock speeds Performance will come from Parallelism something new, a paradigm shift Biggest sea of change for software developers since the OOO (Out Of Order Machine) - Herb Sutter, Microsoft

7 Think Parallel something new, a paradigm shift Developers need to “Think Parallel (or perish)” - James Reinders, Intel We have achieved general awareness. Sequential applications do not result in continued performance improvement on future multi-core and many-core platforms. Developers have much to learn! Thinking Parallel Software shipping in 2007 have Quad-core processors available to utilize. What is the useful economic life for SW in this new HW reality? Could be run 16 core processors* in 2010 – is it ready today for a 3 year lifespan? *assumes doubling of cores every 2 years, start with 4 cores in 2006

8 processor cores We have a future ahead with where Processors have more and more cores. CHALLENGE: UNLOCKING THIS TREMENDOUS POWER USING SOFTWARE Think Parallel

9 processor cores software with very limited concurrency Aside from servers, concurrency is mostly outside applications today. Multiple tasks. Environment. Limited concurrency. Think Parallel

10 software with very limited concurrency processor cores Emerging Step are being made today to put concurrency in more software development. Learning to THINK PARALLEL, New methods to use, New methods to explore. Think Parallel

11 software with very limited concurrency processor cores Emerging WE KNOW SOFTWARE DEVELOPERS NEED TO LEARN THIS NEW WORLD IN ORDER TO COMPETE Think Parallel

12 software with very limited concurrency processor cores Emerging Research We already see a future with even more cores. Research today is critical to leading us into the future. Think Parallel

13 What advice we have CS Educators Teach students to think parallel. Help them answer these questions: 1.How will it scale to N processors? 2.How are new correctness issues addressed? 3.How maintainable is the solution we create? Future developers 1.Learn to THINK PARALLEL. 2.Approach all problems looking for parallelism (not step-by- step sequential methods) 3.Use tools designed for concurrent programming. 4.Program to tasks (chores), never threads. Do not use raw threading packages. 5.For debugability, create programs which can be debugged in a single-threaded mode. 6.Minimize explicit synchronization. 7.Use scalable memory allocation. 8.Plan to scale workloads.

14 What we are doing to help Help mainstream programmers to quickly develop quality codeResearchTomorrow’sTechniquesTransactionalMemory SpeculativeMulti-threading Educate Tomorrow’s Experts Helped 45 universities add parallel programming courses Helped 45 universities add parallel programming courses univ students univ students 2008 reaching out to univ2008 reaching out to univ Intel Academic Community ACCELERATE TRANSITION TO PARALLEL PROGRAMMING ProvideToolsToday Architect, Thread, Debug & Tune

Intel ® Academic Community Get Involved! Connect with peers & technologists Access new technology curriculum Lead global discussion forums Share your knowledge! –Join the discussions in the forums –Give your opinions in the blogs –Add your content to the Wiki –Comment on what you are viewing

Join the Intel® Academic Community Forums!  Share your knowledge  Connect with peers  Meet the technologists Join the Intel® Academic Community Forums!  Share your knowledge  Connect with peers  Meet the technologists Do you have an opinion?  How is parallel programming becoming easier?  Many problems can be parallelized as both task and domain decomposition. What types of problems can be parallelized by only one of these methods, but not another? Want to know more about potential parallelism?  Read “Recognizing Potential Parallelism” for the technologist’s point of view. (Available online at the Intel® Academic Community.) Do you have an opinion?  How is parallel programming becoming easier?  Many problems can be parallelized as both task and domain decomposition. What types of problems can be parallelized by only one of these methods, but not another? Want to know more about potential parallelism?  Read “Recognizing Potential Parallelism” for the technologist’s point of view. (Available online at the Intel® Academic Community.)

University Program Supporting Your Curriculum Needs New technology curriculums developed specifically for the needs of the academic community Access to course downloads Obtain the latest Intel® Software Development Products for your classroom Become a member today!

Intel Academic Community – Academic Community Collaborating Worldwide In 51 countries around the world In 51 countries around the world, at more than 460 Universities 800 professors are teaching more than new software professionals Multi-core programming

What are the Universities saying? “The change to multi-core means a re-emphasis on concurrency and parallelism… It's an interesting challenge for us to educate students in that direction. Whether they build gaming applications, vision applications, robotics applications or traditional applications in the high performance domain, they have to always think parallel. That renewed emphasis in understanding parallelism is important to impart to our students.” Professor Karsten Schwan, College of Computing, Georgia Institute of Technology

Intel University Program provides: Recipe for Success Courseware to drop into existing courses Continual technology updates Free Intel® Software Development Tools licenses for the classroom Wiki and blog for collaboration, Forums for specific questions Courseware to drop into existing courses Continual technology updates Free Intel® Software Development Tools licenses for the classroom Wiki and blog for collaboration, Forums for specific questions  

Implementing a parallel curriculum

Summary Visit Intel at booth 317 academiccommunity.intel.com Register for the Intel Academic community

Intel and the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. *Other names and brands may be claimed as the property of others. EUR: Tech U Munich, ETH Zurich, U Politecnica de Catalunya, RWTH Aachen, U Karlsruhe, Budapest Polytechnic Institute

Bev Bachmayer Intel University Program Manager Software and Solutions Group March 14, 2007 Parallelism