John Demme Simha Sethumadhavan Columbia University.

Slides:



Advertisements
Similar presentations
Refining High Performance FORTRAN Code from Programming Model Dependencies Ferosh Jacob University of Alabama Department of Computer Science
Advertisements

Introductions to Parallel Programming Using OpenMP
CSC457 Seminar YongKang Zhu December 6 th, 2001 About Network Processor.
The Path to Multi-core Tools Paul Petersen. Multi-coreToolsThePathTo 2 Outline Motivation Where are we now What is easy to do next What is missing.
March 18, 2008SSE Meeting 1 Mary Hall Dept. of Computer Science and Information Sciences Institute Multicore Chips and Parallel Programming.
Claude TADONKI Mines ParisTech – LAL / CNRS / INP 2 P 3 University of Oujda (Morocco) – October 7, 2011 High Performance Computing Challenges and Trends.
Parallel Programming Henri Bal Rob van Nieuwpoort Vrije Universiteit Amsterdam Faculty of Sciences.
Team Members: Tyler Drake Robert Wrisley Kyle Von Koepping Justin Walsh Faculty Advisors: Computer Science – Prof. Sanjay Rajopadhye Electrical & Computer.
Some Thoughts on Technology and Strategies for Petaflops.
Software Group © 2006 IBM Corporation Compiler Technology Task, thread and processor — OpenMP 3.0 and beyond Guansong Zhang, IBM Toronto Lab.
Trevor Burton6/19/2015 Multiprocessors for DSP SYSC5603 Digital Signal Processing Microprocessors, Software and Applications.
What Great Research ?s Can RAMP Help Answer? What Are RAMP’s Grand Challenges ?
Introduction What is Parallel Algorithms? Why Parallel Algorithms? Evolution and Convergence of Parallel Algorithms Fundamental Design Issues.
Review 4 Chapters 8, 9, 10.
1 Multicores viewed from a correctness perspective Ganesh Gopalakrishnan.
Chapter 14 The Second Component: The Database.
Dr. Gheith Abandah, Chair Computer Engineering Department The University of Jordan 20/4/20091.
Lecture 1 – Parallel Programming Primer CPE 458 – Parallel Programming, Spring 2009 Except as otherwise noted, the content of this presentation is licensed.
Project Proposal (Title + Abstract) Due Wednesday, September 4, 2013.
Programming for High Performance Computers John M. Levesque Director Cray’s Supercomputing Center Of Excellence.
Computer System Architectures Computer System Software
OpenMP in a Heterogeneous World Ayodunni Aribuki Advisor: Dr. Barbara Chapman HPCTools Group University of Houston.
1 Developing Native Device for MPJ Express Advisor: Dr. Aamir Shafi Co-advisor: Ms Samin Khaliq.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Integrating Parallel and Distributed Computing Topics into an Undergraduate CS Curriculum Andrew Danner & Tia Newhall Swarthmore College Third NSF/TCPP.
Overview of the Course Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412 at Rice University.
CIS4930/CDA5125 Parallel and Distributed Systems Florida State University CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love,
Compiler BE Panel IDC HPC User Forum April 2009 Don Kretsch Director, Sun Developer Tools Sun Microsystems.
High-Performance Computing An Applications Perspective REACH-IIT Kanpur 10 th Oct
GPU in HPC Scott A. Friedman ATS Research Computing Technologies.
Copyright © 2002, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
Alternative ProcessorsHPC User Forum Panel1 HPC User Forum Alternative Processor Panel Results 2008.
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.
1 Parallel Programming Aaron Bloomfield CS 415 Fall 2005.
Lawrence Livermore National Laboratory S&T Principal Directorate - Computation Directorate Tools and Scalable Application Preparation Project Computation.
High Performance Computing An overview Alan Edelman Massachusetts Institute of Technology Applied Mathematics & Computer Science and AI Labs (Interactive.
Fundamentals of Information Systems, Third Edition 1 Information and Decision Support Systems: Management Information Systems Management information system.
A Pattern Language for Parallel Programming Beverly Sanders University of Florida.
INTRODUCTION TO COMPUTER ENGINEERING (ECE 001) Dr. Ahmed Bayoumi Dr. Shady Yehia Elmashad 1.
1/50 University of Turkish Aeronautical Association Computer Engineering Department Ceng 541 Introduction to Parallel Computing Dr. Tansel Dökeroğlu
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.
XRD data analysis software development. Outline  Background  Reasons for change  Conversion challenges  Status 2.
1 A simple parallel algorithm Adding n numbers in parallel.
First INFN International School on Architectures, tools and methodologies for developing efficient large scale scientific computing applications Ce.U.B.
1 Chapter 1 Background Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
PERFORMANCE OF THE OPENMP AND MPI IMPLEMENTATIONS ON ULTRASPARC SYSTEM Abstract Programmers and developers interested in utilizing parallel programming.
Pitfalls: Time Dependent Behaviors CS433 Spring 2001 Laxmikant Kale.
Sub-fields of computer science. Sub-fields of computer science.
Introduction To Computer Engineering (ECE 001)
CHAPTER SEVEN PARALLEL PROCESSING © Prepared By: Razif Razali.
Lecture 1 – Parallel Programming Primer
Challenges in Concurrent Computing
University of Technology
Overview of the Course Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412 at Rice University.
Introduction To Computer Engineering (ECE 001)
Serial Data Hub (Proj Dec13-13).
What is Parallel and Distributed computing?
Software Enablement for Multicore Architectures
Lecture 1: Parallel Architecture Intro
Multiprocessor Synchronization Algorithms ( )
for Network Processors
Scalable Parallel Interoperable Data Analytics Library
Alternative Processor Panel Results 2008
HIGH LEVEL SYNTHESIS.
Dr. Tansel Dökeroğlu University of Turkish Aeronautical Association Computer Engineering Department Ceng 442 Introduction to Parallel.
CompSci 1: Principles of Computer Science Lecture 1 Course Overview
Lecture 20 Parallel Programming CSE /27/2019.
Lecture 20 Parallel Programming CSE /8/2019.
Question 1 How are you going to provide language and/or library (or other?) support in Fortran, C/C++, or another language for massively parallel programming.
Presentation transcript:

John Demme Simha Sethumadhavan Columbia University

Meet Joe Joe Programmer (Chief) ‏ Smart

Joe Needs to Parallelize His Code PThreads? MPI? OpenMP? SSE? CUDA? FPGA? UPC? GPGPU? Multi-core? Transactional Memory? Erlang? Occam? Sisal? Shared Memory? SMP? CMP? NUMA? Cell Processor? Cloud Computing? StreamWare? Synchronization? Fortran? ???

Joe Wasn't Trained for This Advanced Programming I Final Exam Fall 2000 Question: Describe a deadlock situation. (2 pts)‏ When two threads are locked in a fight to the death?

Wouldn’t it be nice… If we had a system that would offer advice!  Suggest correct compiler optimizations to use  Provide custom code templates to start parallelization  Suggest “patterns” for code reorganization  Worked across different types of applications  Worked across different languages Traditional machine only automation  On going research and most desirable/ideal solution  High precision analysis hindered by ambiguity  Several engineering challenges

Alternative: Crowd sourcing Use collective intelligence to solve complex tasks Leverage growth of the Internet How does it apply to parallelization?

Database Guru UsersLearners DeveloperExpert Identifies the program to be parallelized; Identifies program hot-spots to be parallelized. Inputs a sequential program and highlights regions being parallelized Receives parallelization suggestions; modifies suggestions if necessary Inputs the corresponding parallel version Provides feedback on the usefulness of the suggestionProvides system information and required libraries for the optimization being entered User Interactions with COMPASS COMPASS System Expert “Ed”

Bogus Charts ` COMPASS Usage

Bogus Charts ` Physical Device Scaling Stops COMPASS Extends Moore's Law

COMPASS DB Mining COMPASS (the connection, at last)‏

COMPASS Usage Transistors per die Application Speed Power Efficiency Effects of COMPASS Usage (Another Bogus Chart)‏ `

COMPASS Owners make a fortune Gajillion Dollars

COMPASS Profits Chip Vendor Profits Chip Vendor and COMPASS Profits

14 10% FFTs, 5% N-Body Simulations, 2% Neural Net Simulations, 15% PDE Solvers, 30% Garbage Collection Processor Unit, Phone Home!

I, For One, Welcome our Robotic Overlords

OSAKA, JAPAN: VIOLENCE BREAKS OUT AT COMPUTER ARCHITECTURE PROGRAM COMMITTEE MEETING

Evolution of the Architect Bob's Career Expert Ed's: To join the COMPASS project please subscribe to: URL: compass.cs.columbia.edu