Parallel Application Paradigms CS433 Spring 2001 Laxmikant Kale.

Slides:



Advertisements
Similar presentations
CS 484. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
Advertisements

Master/Slave Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Chess Problem Solver Solves a given chess position for checkmate Problem input in text format.
Parallelizing stencil computations Based on slides from David Culler, Jim Demmel, Bob Lucas, Horst Simon, Kathy Yelick, et al., UCB CS267.
Question: Find the equation of a line that is parallel to the equation: 3x + 2y = 18.
Abhinav Bhatele, Laxmikant V. Kale University of Illinois at Urbana-Champaign Sameer Kumar IBM T. J. Watson Research Center.
CISC October Goals for today: Foster’s parallel algorithm design –Partitioning –Task dependency graph Granularity Concurrency Collective communication.
Reference: Message Passing Fundamentals.
ECE669 L4: Parallel Applications February 10, 2004 ECE 669 Parallel Computer Architecture Lecture 4 Parallel Applications.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
High Performance Computing 1 Parallelization Strategies and Load Balancing Some material borrowed from lectures of J. Demmel, UC Berkeley.
CS 584. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
Chapter 13 Finite Difference Methods: Outline Solving ordinary and partial differential equations Finite difference methods (FDM) vs Finite Element Methods.
Topology Aware Mapping for Performance Optimization of Science Applications Abhinav S Bhatele Parallel Programming Lab, UIUC.
Mapping Techniques for Load Balancing
Lecture 1 – Parallel Programming Primer CPE 458 – Parallel Programming, Spring 2009 Except as otherwise noted, the content of this presentation is licensed.
Performance Comparison of Pure MPI vs Hybrid MPI-OpenMP Parallelization Models on SMP Clusters Nikolaos Drosinos and Nectarios Koziris National Technical.
Lecture Objectives: Review discretization methods for advection diffusion equation Accuracy Numerical Stability Unsteady-state CFD Explicit vs. Implicit.
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
ADLB Update Recent and Current Adventures with the Asynchronous Dynamic Load Balancing Library Rusty Lusk Mathematics and Computer Science Division Argonne.
Charm++ Load Balancing Framework Gengbin Zheng Parallel Programming Laboratory Department of Computer Science University of Illinois at.
Novel and “Alternative” Parallel Programming Paradigms Laxmikant Kale CS433 Spring 2000.
Reference: / Parallel Programming Paradigm Yeni Herdiyeni Dept of Computer Science, IPB.
Scalable Algorithms for Structured Adaptive Mesh Refinement Akhil Langer, Jonathan Lifflander, Phil Miller, Laxmikant Kale Parallel Programming Laboratory.
Dynamic Load Balancing Tree and Structured Computations CS433 Laxmikant Kale Spring 2001.
Adaptive MPI Milind A. Bhandarkar
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
If Exascale by 2018, Really? Yes, if we want it, and here is how Laxmikant Kale.
Advanced / Other Programming Models Sathish Vadhiyar.
Parallel Simulation of Continuous Systems: A Brief Introduction
Application Paradigms: Unstructured Grids CS433 Spring 2001 Laxmikant Kale.
Dynamic Load Balancing in Charm++ Abhinav S Bhatele Parallel Programming Lab, UIUC.
Lecture 18: Object-Oriented Design – Interaction and State Diagrams Anita S. Malik Adapted from Schach (2004) Chapter 12.
Principles of Parallel Algorithm Design Prof. Dr. Cevdet Aykanat Bilkent Üniversitesi Bilgisayar Mühendisliği Bölümü.
Overcoming Scaling Challenges in Bio-molecular Simulations Abhinav Bhatelé Sameer Kumar Chao Mei James C. Phillips Gengbin Zheng Laxmikant V. Kalé.
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd ed., by B. Wilkinson & M
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
CS 484 Designing Parallel Algorithms Designing a parallel algorithm is not easy. There is no recipe or magical ingredient Except creativity We can benefit.
Implicit Differentiation. Implicitly vs. Explicitly Defined Functions y is given explicitly as a function of x (y is solved in terms of x) y is given.
Lecture 3 : Performance of Parallel Programs Courtesy : MIT Prof. Amarasinghe and Dr. Rabbah’s course note.
CS- 492 : Distributed system & Parallel Processing Lecture 7: Sun: 15/5/1435 Foundations of designing parallel algorithms and shared memory models Lecturer/
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Parallelizing Spacetime Discontinuous Galerkin Methods Jonathan Booth University of Illinois at Urbana/Champaign In conjunction with: L. Kale, R. Haber,
CS 584. Discrete Optimization Problems A discrete optimization problem can be expressed as (S, f) S is the set of all feasible solutions f is the cost.
Generic GUI – Thoughts to Share Jinping Gwo EMSGi.org.
Programming for Performance CS433 Spring 2001 Laxmikant Kale.
Data Structures and Algorithms in Parallel Computing Lecture 7.
1 Rocket Science using Charm++ at CSAR Orion Sky Lawlor 2003/10/21.
CS 420 Design of Algorithms Parallel Algorithm Design.
Motivation: dynamic apps Rocket center applications: –exhibit irregular structure, dynamic behavior, and need adaptive control strategies. Geometries are.
Hierarchical Load Balancing for Large Scale Supercomputers Gengbin Zheng Charm++ Workshop 2010 Parallel Programming Lab, UIUC 1Charm++ Workshop 2010.
Dynamic Load Balancing Tree and Structured Computations.
Programming for Performance Laxmikant Kale CS 433.
COMP7330/7336 Advanced Parallel and Distributed Computing Task Partitioning Dr. Xiao Qin Auburn University
COMP7330/7336 Advanced Parallel and Distributed Computing Task Partitioning Dynamic Mapping Dr. Xiao Qin Auburn University
Parallel Molecular Dynamics A case study : Programming for performance Laxmikant Kale
1 Scalable Cosmological Simulations on Parallel Machines Filippo Gioachin¹ Amit Sharma¹ Sayantan Chakravorty¹ Celso Mendes¹ Laxmikant V. Kale¹ Thomas R.
Lecture 1 – Parallel Programming Primer
Auburn University COMP7330/7336 Advanced Parallel and Distributed Computing Mapping Techniques Dr. Xiao Qin Auburn University.
Parallel Programming in C with MPI and OpenMP
Ch > 28.4.
Component Frameworks:
CS 584.
Parallel Algorithm Models
Adaptivity and Dynamic Load Balancing
Gengbin Zheng, Esteban Meneses, Abhinav Bhatele and Laxmikant V. Kale
CS703 - Advanced Operating Systems
Parallel Programming in C with MPI and OpenMP
Essential Question: How can we determine if the model for a function should be discrete or continuous?
Presentation transcript:

Parallel Application Paradigms CS433 Spring 2001 Laxmikant Kale

2 Now that we know about the prog. Models... Programming models: –SAS, MPI, Charm++, …. What are the implications for what kinds of machines to build? Can we compare the models to decide which one is “better”? Answers to both questions depend on the characteristics of the applications one programs on these machines. We will next study several “classes” of applications –Often a real application will include a mixture of these –However, years of experience allows us to attempt taxanomy

3 Application paradigms Master-Slave Tree-structured, dynamic, computations –Divide-and-conquer, state-space search, branch-and-bound, game- trees Physical Simulations: continuum –Largest class of parallel applications –(Parallel Databases and Traction-processing systems?) Discrete event simulations Transaction processing

4 Physical simulations Typical scenario: –Continuous physical domain e.g. interior of rocket, bridge, airplane-wing with air flowing around, global weather, –Modeled by partial differential equations –Study/predict either steady-state behavior or time-varying behavior –Implicit or explicit timesteps Variations and subclasses –Structured and unstructured meshes arrays vs graphs –Dynamic behavior vs static Adaptive refinements –Particles

5 Master-slave May be called manager-workers One master process, and several slave processes –Manager sends tasks to the workers –worker return results to the master –No other communication (esp. among workers) Examples: –SETI, graphics, coarse-grained multiple simulations, Issues: –Master may become a bottleneck grainsize control –Load balancing Adaptive : worker asks for work when they are idle Master assigns all pieces of work to slaves at the beginning Use a “leash”? Master assigns multiple pieces to workers, –and sends new work as they complete