PERFORMANCE EVALUATIONS

Slides:



Advertisements
Similar presentations
Vector Processing. Vector Processors Combine vector operands (inputs) element by element to produce an output vector. Typical array-oriented operations.
Advertisements

CIS December '99 Introduction to Parallel Architectures Dr. Laurence Boxer Niagara University.
11Sahalu JunaiduICS 573: High Performance Computing5.1 Analytical Modeling of Parallel Programs Sources of Overhead in Parallel Programs Performance Metrics.
Advanced Topics in Algorithms and Data Structures Page 1 Parallel merging through partitioning The partitioning strategy consists of: Breaking up the given.
Fall 2006CENG 7071 Algorithm Analysis. Fall 2006CENG 7072 Algorithmic Performance There are two aspects of algorithmic performance: Time Instructions.
Advanced Topics in Algorithms and Data Structures
Tractable and intractable problems for parallel computers
12a.1 Introduction to Parallel Computing UNC-Wilmington, C. Ferner, 2008 Nov 4, 2008.
1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Sep 5, 2005 Lecture 2.
Arquitectura de Sistemas Paralelos e Distribuídos Paulo Marques Dep. Eng. Informática – Universidade de Coimbra Ago/ Quantitative.
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.
Copyright © Cengage Learning. All rights reserved. CHAPTER 11 ANALYSIS OF ALGORITHM EFFICIENCY ANALYSIS OF ALGORITHM EFFICIENCY.
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.
Scheduling Master - Slave Multiprocessor Systems Professor: Dr. G S Young Speaker:Darvesh Singh.
1 Lecture 2: Parallel computational models. 2  Turing machine  RAM (Figure )  Logic circuit model RAM (Random Access Machine) Operations supposed to.
1 Interconnects Shared address space and message passing computers can be constructed by connecting processors and memory unit using a variety of interconnection.
Analysis of Algorithms
Common Fractions © Math As A Second Language All Rights Reserved next #6 Taking the Fear out of Math Dividing 1 3 ÷ 1 3.
Complexity 20-1 Complexity Andrei Bulatov Parallel Arithmetic.
Chapter 10 Algorithm Analysis.  Introduction  Generalizing Running Time  Doing a Timing Analysis  Big-Oh Notation  Analyzing Some Simple Programs.
Lecture 5 Jianjun Hu Department of Computer Science and Engineering University of South Carolina CSCE350 Algorithms and Data Structure.
Parallel Programming with MPI and OpenMP
Chapter 9 Efficiency of Algorithms. 9.3 Efficiency of Algorithms.
Motivation: Sorting is among the fundamental problems of computer science. Sorting of different datasets is present in most applications, ranging from.
CDP Tutorial 3 Basics of Parallel Algorithm Design uses some of the slides for chapters 3 and 5 accompanying “Introduction to Parallel Computing”, Addison.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 23 Algorithm Efficiency.
27-Jan-16 Analysis of Algorithms. 2 Time and space To analyze an algorithm means: developing a formula for predicting how fast an algorithm is, based.
3/12/2013Computer Engg, IIT(BHU)1 INTRODUCTION-1.
Unit1: Modeling & Simulation Module5: Logic Simulation Topic: Unknown Logic Value.
Uses some of the slides for chapters 3 and 5 accompanying “Introduction to Parallel Computing”, Addison Wesley, 2003.
Chapter One Introduction to Pipelined Processors.
Chapter 15 Running Time Analysis. Topics Orders of Magnitude and Big-Oh Notation Running Time Analysis of Algorithms –Counting Statements –Evaluating.
Lecture # 16. Applications of Incrementing and Complementing machines 1’s complementing and incrementing machines which are basically Mealy machines are.
Virtual University of Pakistan Lecture No. 11 Statistics and Probability by Miss Saleha Naghmi Habibullah.
Virtual University of Pakistan
Parallel Computing and Parallel Computers
Introduction to Analysis of Algorithms
Algebra and Composition of Functions
COMPUTATIONAL MODELS.
Analysis of Algorithms
COMP108 Algorithmic Foundations Algorithm efficiency
Introduction to Recurrence Relations
Introduction Algorithms Order Analysis of Algorithm
Parallel Density-based Hybrid Clustering
INTRODUCTION.
Great Theoretical Ideas in Computer Science
Lottery Scheduling Ish Baid.
Chapter 3: Principles of Scalable Performance
Hidden Markov Models Part 2: Algorithms
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
Objective of This Course
Big O Notation.
Overview Parallel Processing Pipelining
Numerical Algorithms Quiz questions
Algorithm Discovery and Design
WELFARE FOUNDATION OF CBA
Professor Ioana Banicescu CSE 8843
Control Systems (CS) Signal Flow Graphs Abdul Qadir Ansari, PhD
Chapter 11 I/O Management and Disk Scheduling
Analysis of Algorithms
Performance Cycle time of a computer CPU speed speed = 1 / cycle time
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 Discrete Mathematics
Potential for parallel computers/parallel programming
Parallel Speedup.
Analysis of Algorithms
Potential for parallel computers/parallel programming
Analysis of Algorithms
Presentation transcript:

PERFORMANCE EVALUATIONS

Introduction The topic of performance evaluation explains those parameters that are devised to measure the performances of various parallel systems. Thus, unlike performance of a sequential algorithm, the evaluation of a parallel algorithm cannot be carried out without considering the other important parameters like the total number of processors being employed in a specific parallel computational model. This unit provides a platform for understanding the performance evaluation methodology as well as giving an overview of some of the well-known performance analysis techniques.

1) Running Time The running time is the amount of time consumed in execution of an algorithm for a given input on the N-processor based parallel computer. The running time is denoted by T(n) where n signifies the number of processors employed. If the value of n is equal to 1, then the case is similar to a sequential computer. The relation between Execution time vs. Number of processors is shown in Figure 1.

It can be easily seen from the graph that as the number of processors increases, initially the execution time reduces but after a certain optimum level the execution time increases as number of processors increases. This discrepancy is because of the overheads involved in increasing the number of processes.

2) Speed Up Speed up is the ratio of the time required to execute a given program using a specific algorithm on a machine with single processor (i.e. T (1) (where n=1)) to the time required to execute the same program using a specific algorithm on a machine with multiple processors (i.e. T(n)). Basically the speed up factor helps us in knowing the relative gain achieved in shifting from a sequential machine to a parallel computer. It may be noted that the term T(1) signifies the amount of time taken to execute a program using the best sequential algorithm i.e., the algorithm with least time complexity.

Let us take an example and illustrate the practical use of speedup Let us take an example and illustrate the practical use of speedup. Suppose, we have a problem of multiplying n numbers. The time complexity of the sequential algorithm for a machine with single processor is O(n) as we need one loop for reading as well as computing the output. However, in the parallel computer, let each number be allocated to individual processor and computation model being used being a hypercube. In such a situation, the total number of steps required to compute the result is log n i.e. the time complexity is O(log n). Figure 2, illustrates the steps to be followed for achieving the desired output in a parallel hypercube computer model.

As the number of steps followed is equal to 3 i. e As the number of steps followed is equal to 3 i.e., log 8 where n is number of processors. Hence, the complexity is O(log n). In view of the fact that sequential algorithm takes 8 steps and the above-mentioned parallel algorithm takes 3 steps, the speed up is as under:

As the value of S(n) is inversely proportional to the time required to compute the output on a parallel number which in turn is dependent on number of processors employed for performing the computation. The relation between S(n) vs. Number of processors is shown in Figure 3. The speedup is directly proportional to number of processors, therefore a linear arc is depicted. However, in situations where there is parallel overhead, the arc is sub- linear.

The End