Parallel Computing Demand for High Performance

Slides:



Advertisements
Similar presentations
Partitioning and Divide-and-Conquer Strategies ITCS 4/5145 Parallel Computing, UNC-Charlotte, B. Wilkinson, Jan 23, 2013.
Advertisements

Potential for parallel computers/parallel programming
Chapter 1 Parallel Computers.
Parallel Computers Chapter 1
Parallel Programming Henri Bal Rob van Nieuwpoort Vrije Universiteit Amsterdam Faculty of Sciences.
Introduction to Analysis of Algorithms
Parallel Programming Henri Bal Vrije Universiteit Faculty of Sciences Amsterdam.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, ©
Applying Multi-Criteria Optimisation to Develop Cognitive Models Peter Lane University of Hertfordshire Fernand Gobet Brunel University.
Parallel Programming Henri Bal Vrije Universiteit Amsterdam Faculty of Sciences.
Multiprocessor Real- Time Scheduling Aaron Harris CSE 666 Prof. Ganesan.
1a-1.1 Parallel Computing Demand for High Performance ITCS 4/5145 Parallel Programming UNC-Charlotte, B. Wilkinson Dec 27, 2012 slides1a-1.
Introduction to Earth Science
Grid Computing, B. Wilkinson, 20047a.1 Computational Grids.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
CSCI-455/522 Introduction to High Performance Computing Lecture 1.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
Introduction. Demand for Computational Speed Continual demand for greater computational speed from a computer system than is currently possible Areas.
1 Choosing a Computer Science Research Problem. 2 Choosing a Computer Science Research Problem One of the hardest problems with doing research in any.
SNU OOPSLA Lab. 1 Great Ideas of CS with Java Part 1 WWW & Computer programming in the language Java Ch 1: The World Wide Web Ch 2: Watch out: Here comes.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
3/12/2013Computer Engg, IIT(BHU)1 INTRODUCTION-1.
1a.1 Parallel Computing and Parallel Computers ITCS 4/5145 Cluster Computing, UNC-Charlotte, B. Wilkinson, 2006.
Ms N Nashandi Dr SH Nggada Week 08 – Recursion. Outline We shall be covering the following What is a recursion? Iteration versus Recursion. Recursion.
All-to-All Pattern A pattern where all (slave) processes can communicate with each other Somewhat the worst case scenario! 1 ITCS 4/5145 Parallel Computing,
Complexity Analysis (Part I)
Introduction to Algorithms
Parallel Computers Chapter 1.
Potential for parallel computers/parallel programming
Parallel Computing and Parallel Computers
PERFORMANCE EVALUATIONS
Introduction to Analysis of Algorithms
Vocabulary Algorithm - A precise sequence of instructions for processes that can be executed by a computer Low level programming language: A programming.
Analysis of Algorithms
Parallel Computing Demand for High Performance
Prepared by Viren Pandya
Algorithm Analysis CSE 2011 Winter September 2018.
Parallel Computers.
Objective of This Course
Parallel Computing Demand for High Performance
Winter 2018 CISC101 12/2/2018 CISC101 Reminders
Pipeline Pattern ITCS 4/5145 Parallel Computing, UNC-Charlotte, B. Wilkinson, 2012 slides5.ppt Oct 24, 2013.
What is Concurrent Programming?
Quiz Questions Parallel Programming Parallel Computing Potential
All-to-All Pattern A pattern where all (slave) processes can communicate with each other Somewhat the worst case scenario! ITCS 4/5145 Parallel Computing,
All-to-All Pattern A pattern where all (slave) processes can communicate with each other Somewhat the worst case scenario! ITCS 4/5145 Parallel Computing,
Parallel Computing Demand for High Performance
Algorithm and Ambiguity
Pipeline Pattern ITCS 4/5145 Parallel Computing, UNC-Charlotte, B. Wilkinson, 2012 slides5.ppt March 20, 2014.
Pipeline Pattern ITCS 4/5145 Parallel Computing, UNC-Charlotte, B. Wilkinson slides5.ppt August 17, 2014.
CSE 373 Data Structures and Algorithms
Introduction to Algorithms
PERFORMANCE MEASURES. COMPUTATIONAL MODELS Equal Duration Model:  It is assumed that a given task can be divided into n equal subtasks, each of which.
Introduction to Algorithm and its Complexity Lecture 1: 18 slides
All-to-All Pattern A pattern where all (slave) processes can communicate with each other Somewhat the worst case scenario! ITCS 4/5145 Parallel Computing,
Parallel Computing and Parallel Computers
Potential for parallel computers/parallel programming
Potential for parallel computers/parallel programming
Stencil Pattern ITCS 4/5145 Parallel computing, UNC-Charlotte, B. Wilkinson Oct 14, 2014 slides6b.ppt 1.
Potential for parallel computers/parallel programming
Stencil Pattern ITCS 4/5145 Parallel computing, UNC-Charlotte, B. Wilkinson StencilPattern.ppt Oct 14,
Quiz Questions Parallel Programming Parallel Computing Potential
Quiz Questions Parallel Programming Parallel Computing Potential
Quiz Questions Parallel Programming Parallel Computing Potential
Vrije Universiteit Amsterdam
Potential for parallel computers/parallel programming
Complexity Analysis (Part I)
U3L4 Using Simple Commands
Complexity Analysis (Part I)
Distributed Systems and Algorithms
Presentation transcript:

Parallel Computing Demand for High Performance ITCS 4/5145 Parallel Programming UNC-Charlotte, B. Wilkinson January 3, 2016

Parallel Computing Motives Using more than one computer, or a computer with more than one processor, collectively to solve a problem. Motives Usually faster computation. Very simple idea n computers operating simultaneously can achieve the result faster it will not be n times faster for various reasons Other motives include: fault tolerance, larger amount of memory available, ...

Parallel programming has been around for more than 50 years Parallel programming has been around for more than 50 years. Gill writes in 1958*: “... There is therefore nothing new in the idea of parallel programming, but its application to computers. The author cannot believe that there will be any insuperable difficulty in extending it to computers. It is not to be expected that the necessary programming techniques will be worked out overnight. Much experimenting remains to be done. After all, the techniques that are commonly used in programming today were only won at the cost of considerable toil several years ago. In fact the advent of parallel programming may do something to revive the pioneering spirit in programming which seems at the present to be degenerating into a rather dull and routine occupation ...” * Gill, S. (1958), “Parallel Programming,” The Computer Journal, vol. 1, April, pp. 2-10.

Problems needing multiple computers together to be solved The key aspect is the execution time. Sometimes there is a strict deadline for the solution, for example real time applications, flight control, … Sometimes is deadline is less quantifiable, but still very important, for example: CT scan image processing. A doctor needs that quickly within minutes or less to work effectively. Computer assisted engineering design becomes ineffective if each step takes a long time. Sometimes present day computers simply cannot produce the result at all in a reasonable time -- so-called “Grand Challenge” problems, e.g. global weather forecasting, modeling large number of interacting bodies, large DNA structures …

Weather Forecasting Atmosphere modeled by dividing it into 3-dimensional cells. Calculations of each cell repeated many times to model passage of time. Temperature, pressure, humidity, etc.

Modeling Motion of Astronomical Bodies Each body attracted to each other body by gravitational forces. Movement of each body predicted by calculating total force on each body and applying Newton’s laws (in the simple case) to determine the movement of the bodies.

Modeling Motion of Astronomical Bodies Each body has N-1 forces on it from the N-1 other bodies - O(N) calculation to determine the force on one body (three dimensional). With N bodies, approx. N2 calculations, i.e. O(N2) * After determining new positions of bodies, calculations repeated, i.e. N2 x T calculations where T is the number of time steps, i.e. the total complexity is O(N2T). * There is an O(N log2 N) algorithm, which we will cover in the course

A galaxy might have, say, 1011 stars. Even if each calculation done in 1 ms (extremely optimistic figure), it takes: 109 years for one iteration using N2 algorithm or Almost a year for one iteration using the N log2 N algorithm assuming the calculations take the same time (which may not be true). Then multiple the time by the number of time periods! We may set the N-body problem as an assignment using the basic O(N2) algorithm. However, you do not have 109 years to get the solution and turn it in.

My code with graphics running on coit-grid server and forwarded to client PC. See video for demo

Questions