Professor Ioana Banicescu CSE 8843

Slides:



Advertisements
Similar presentations
1 Lecture 5 PRAM Algorithm: Parallel Prefix Parallel Computing Fall 2008.
Advertisements

Optimal PRAM algorithms: Efficiency of concurrent writing “Computer science is no more about computers than astronomy is about telescopes.” Edsger Dijkstra.
Lecture 3: Parallel Algorithm Design
1 Parallel Parentheses Matching Plus Some Applications.
CS223 Advanced Data Structures and Algorithms 1 Divide and Conquer Neil Tang 4/15/2010.
Advanced Topics in Algorithms and Data Structures Lecture 7.1, page 1 An overview of lecture 7 An optimal parallel algorithm for the 2D convex hull problem,
TECH Computer Science Parallel Algorithms  several operations can be executed at the same time  many problems are most naturally modeled with parallelism.
Advanced Topics in Algorithms and Data Structures Classification of the PRAM model In the PRAM model, processors communicate by reading from and writing.
PRAM Models Advanced Algorithms & Data Structures Lecture Theme 13 Prof. Dr. Th. Ottmann Summer Semester 2006.
Advanced Topics in Algorithms and Data Structures Page 1 Parallel merging through partitioning The partitioning strategy consists of: Breaking up the given.
Simulating a CRCW algorithm with an EREW algorithm Efficient Parallel Algorithms COMP308.
4/26/05Han: ELEC72501 Department of Electrical and Computer Engineering Auburn University, AL K.Han Development of Parallel Distributed Computing System.
Parallel Merging Advanced Algorithms & Data Structures Lecture Theme 15 Prof. Dr. Th. Ottmann Summer Semester 2006.
Fall 2008Array Manipulation Algorithms1. Fall 2008Array Manipulation Algorithms2 Searching Let A = (a 1, a 2, …, a n ) be a sorted array of data such.
1Cuba PARALLEL AND DISTRIBUTED COMPUTATION (Lucidi di L. Pagli) MANY INTERCONNECTED PROCESSORS WORKING CONCURRENTLY INTERCONNECTION NETWORK P2 P3 P1 P4P5.
Lecture 5 Today’s Topics and Learning Objectives Quinn Chapter 7 Predict performance of parallel programs Understand barriers to higher performance.
Complexity 19-1 Parallel Computation Complexity Andrei Bulatov.
Parallel Algorithms - Introduction Advanced Algorithms & Data Structures Lecture Theme 11 Prof. Dr. Th. Ottmann Summer Semester 2006.
1 Matrix Addition, C = A + B Add corresponding elements of each matrix to form elements of result matrix. Given elements of A as a i,j and elements of.
1 Lecture 3 PRAM Algorithms Parallel Computing Fall 2008.
Advanced Topics in Algorithms and Data Structures 1 Two parallel list ranking algorithms An O (log n ) time and O ( n log n ) work list ranking algorithm.
EECC756 - Shaaban #1 lec # 3 Spring Parallel Programs Conditions of Parallelism:Conditions of Parallelism: –Data Dependence –Control Dependence.
Basic PRAM algorithms Problem 1. Min of n numbers Problem 2. Computing a position of the first one in the sequence of 0’s and 1’s.
Simulating a CRCW algorithm with an EREW algorithm Lecture 4 Efficient Parallel Algorithms COMP308.
1 Lecture 2: Parallel computational models. 2  Turing machine  RAM (Figure )  Logic circuit model RAM (Random Access Machine) Operations supposed to.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 8, 2005 Session 8.
Parallel Algorithms Sorting and more. Keep hardware in mind When considering ‘parallel’ algorithms, – We have to have an understanding of the hardware.
1 Parallel Sorting Algorithms. 2 Potential Speedup O(nlogn) optimal sequential sorting algorithm Best we can expect based upon a sequential sorting algorithm.
Sorting. Quick Sort Example 2, 1, 3, 4, 5 2, 4, 3, 1, 5, 5, 6, 9, 7, 8, 5 S={6, 5, 9, 2, 4, 3, 5, 1, 7, 5, 8} 1, 234, 5 5 5, 6, 7, 8, 9.
1 PRAM Algorithms Sums Prefix Sums by Doubling List Ranking.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 3, 2005 Session 7.
Complexity 20-1 Complexity Andrei Bulatov Parallel Arithmetic.
Parallel computation Section 10.5 Giorgi Japaridze Theory of Computability.
1 Fat heaps (K & Tarjan 96). 2 Goal Want to achieve the performance of Fibonnaci heaps but on the worst case. Why ? Theoretical curiosity and some applications.
Fall 2008Simple Parallel Algorithms1. Fall 2008Simple Parallel Algorithms2 Scalar Product of Two Vectors Let a = (a 1, a 2, …, a n ); b = (b 1, b 2, …,
Data Structures and Algorithms in Parallel Computing Lecture 8.
Lecture 9 Architecture Independent (MPI) Algorithm Design
Concepts of Algorithms CSC-244 Unit 3 and 4 Algorithm Growth Rates Shahid Iqbal Lone Computer College Qassim University K.S.A.
1 A simple parallel algorithm Adding n numbers in parallel.
PRAM and Parallel Computing
Introduction to Algorithms: Divide-n-Conquer Algorithms
Intractable Problems Time-Bounded Turing Machines Classes P and NP
PERFORMANCE EVALUATIONS
Lecture 3: Parallel Algorithm Design
PRAM Model for Parallel Computation
Parallel Algorithms CS170 Fall 2016.
Lecture 2: Parallel computational models
Chapter 4 Divide-and-Conquer
Sorting Quiz questions
Partial Products Algorithm for Multiplication
Dr. Ameria Eldosoky Discrete mathematics
PRAM Algorithms.
PRAM Model for Parallel Computation
Intractable Problems Time-Bounded Turing Machines Classes P and NP
Intractable Problems Time-Bounded Turing Machines Classes P and NP
Lecture 5 PRAM Algorithms (cont.)
CSE838 Lecture notes copy right: Moon Jung Chung
Numerical Algorithms Quiz questions
Lecture 28 CSE 331 Nov 7, 2016.
Professor Ioana Banicescu CSE 8843
CSE 2010: Algorithms and Data Structures
Unit –VIII PRAM Algorithms.
CSE 373, Copyright S. Tanimoto, 2002 Asymptotic Analysis -
Time Complexity Lecture 14 Sec 10.4 Thu, Feb 22, 2007.
Parallel Algorithms A Simple Model for Parallel Processing
Module 6: Introduction to Parallel Computing
CSE 373, Copyright S. Tanimoto, 2001 Asymptotic Analysis -
Matrix Addition, C = A + B Add corresponding elements of each matrix to form elements of result matrix. Given elements of A as ai,j and elements of B as.
Parallel Sorting Algorithms
CSE 332: Parallel Algorithms
Presentation transcript:

Professor Ioana Banicescu CSE 8843 Models 4 Professor Ioana Banicescu CSE 8843

Performance of parallel algorithms: Given: parallel algorithm (we measure it’s performance in terms of worst-case analysis) Let Q be a problem: We have a PRAM algorithm that runs in: T(n) using P(n) processors (for an instance of size n) C(n)=T(n).P(n) //Cost of parallel algorithm The parallel algorithm can be converted into a sequential algorithm that runs in O(C(n)) time. We have a single processor to simulate the P(n) processors in O(P(n)) time, for each for the T(n) parallel steps If p<=P(n): For each of the T(n) parallel steps, we have p processors simulate the original P(n) original processors in O(P(n)/p) substeps. (In the first step, PEs: 1,2,…,p are simulated. In the second step, PEs: p+1,p+2,….,2p are simulated, etc.) This simulation takes O(T(n).P(n)/p) time. When p>P(n), the running time of T(n) can be achieved using P(n) processors only.

Equivalent ways of measuring the performance of parallel algorithms: P(n) processors and T(n) time C(n)=P(n).T(n) cost and T(n) time O(T(n)P(n)/p) time for any number p<=P(n) PEs O(C(n)/p + T(n)) time for any number p of PEs Example 1: PRAM algorithm to compute sum of n elements: n PEs and O(log n) time O(n.log n) cost and O(log n) time O(n.log n/p) time for any p<=n O(n.log n/p + log n) time for any p

Equivalent ways of measuring the performance of parallel algorithms: (continued…) Example 2: PRAM algorithm to perform matrix multiplication: n3 PEs and O(log n) time O(n3.log n) cost and O(log n) time O(n3.log n/p) time for any p<=n3 O(n3.log n/p + log n) time for any p