An introduction to the memory-distributed aspect of the code Arpege/Ifs/Aladin R. El Khatib Météo-France - CNRM/GMAP September, 2002.

Slides:



Advertisements
Similar presentations
1 Copyright © 2010, Elsevier Inc. All rights Reserved Chapter 1 Why Parallel Computing? An Introduction to Parallel Programming Peter Pacheco.
Advertisements

Multiple Processor Systems
Multiple Processor Systems
Parallel Processing with OpenMP
Introduction to Openmp & openACC
Distributed Systems CS
SE-292 High Performance Computing
A Dynamic World, what can Grids do for Multi-Core computing? Daniel Goodman, Anne Trefethen and Douglas Creager
GPGPU Introduction Alan Gray EPCC The University of Edinburgh.
Parallel Computing Majid Almeshari John Conklin. Outline The Challenge Available Parallelization Resources Status of Parallelization Plan & Next Step.
CSCI 8150 Advanced Computer Architecture Hwang, Chapter 1 Parallel Computer Models 1.2 Multiprocessors and Multicomputers.
Introduction to MIMD architectures
MPI and C-Language Seminars Seminar Plan  Week 1 – Introduction, Data Types, Control Flow, Pointers  Week 2 – Arrays, Structures, Enums, I/O,
Reference: Message Passing Fundamentals.
1 Distributed Computing Algorithms CSCI Distributed Computing: everything not centralized many processors.
Figure 2.8 Compiler phases Compiling. Figure 2.9 Object module Linking.
Parallel Programming on the SGI Origin2000 With thanks to Moshe Goldberg, TCC and Igor Zacharov SGI Taub Computer Center Technion Mar 2005 Anne Weill-Zrahia.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Parallel Programming Models and Paradigms
Yuan CMSC 838 Presentation Parallelisation of IBD computation for determining genetic disease map.
Arquitectura de Sistemas Paralelos e Distribuídos Paulo Marques Dep. Eng. Informática – Universidade de Coimbra Ago/ Machine.
1 CSE SUNY New Paltz Chapter Nine Multiprocessors.
1 Computer Science, University of Warwick Architecture Classifications A taxonomy of parallel architectures: in 1972, Flynn categorised HPC architectures.
Reference: / Parallel Programming Paradigm Yeni Herdiyeni Dept of Computer Science, IPB.
Parallel Processing LAB NO 1.
LIGO-G Z 8 June 2001L.S.Finn/LDAS Camp1 How to think about parallel programming.
 What is an operating system? What is an operating system?  Where does the OS fit in? Where does the OS fit in?  Services provided by an OS Services.
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
Distributed Shared Memory: A Survey of Issues and Algorithms B,. Nitzberg and V. Lo University of Oregon.
UNIT - 1Topic - 2 C OMPUTING E NVIRONMENTS. What is Computing Environment? Computing Environment explains how a collection of computers will process and.
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
AN EXTENDED OPENMP TARGETING ON THE HYBRID ARCHITECTURE OF SMP-CLUSTER Author : Y. Zhao 、 C. Hu 、 S. Wang 、 S. Zhang Source : Proceedings of the 2nd IASTED.
Chapter 2 Parallel Architecture. Moore’s Law The number of transistors on a chip doubles every years. – Has been valid for over 40 years – Can’t.
Multiprocessing. Going Multi-core Helps Energy Efficiency William Holt, HOT Chips 2005 Adapted from UC Berkeley "The Beauty and Joy of Computing"
Institute for Software Science – University of ViennaP.Brezany Parallel and Distributed Systems Peter Brezany Institute for Software Science University.
April 26, CSE8380 Parallel and Distributed Processing Presentation Hong Yue Department of Computer Science & Engineering Southern Methodist University.
Parallel Processing Steve Terpe CS 147. Overview What is Parallel Processing What is Parallel Processing Parallel Processing in Nature Parallel Processing.
Multiprossesors Systems.. What are Distributed Databases ? “ A Logically interrelated collection of shared data ( and a description of this data) physically.
Vector/Array ProcessorsCSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Vector/Array Processors Reading: Stallings, Section.
Copyright © 2011 Curt Hill MIMD Multiple Instructions Multiple Data.
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Parallel Computing.
ATmospheric, Meteorological, and Environmental Technologies RAMS Parallel Processing Techniques.
1 THE EARTH SIMULATOR SYSTEM By: Shinichi HABATA, Mitsuo YOKOKAWA, Shigemune KITAWAKI Presented by: Anisha Thonour.
1 Copyright © 2010, Elsevier Inc. All rights Reserved Chapter 2 Parallel Hardware and Parallel Software An Introduction to Parallel Programming Peter Pacheco.
Outline Why this subject? What is High Performance Computing?
OpenMP for Networks of SMPs Y. Charlie Hu, Honghui Lu, Alan L. Cox, Willy Zwaenepoel ECE1747 – Parallel Programming Vicky Tsang.
Image Processing A Study in Pixel Averaging Building a Resolution Pyramid With Parallel Computing Denise Runnels and Farnaz Zand.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 1.
Multiprocessor  Use large number of processor design for workstation or PC market  Has an efficient medium for communication among the processor memory.
SMP Basics KeyStone Training Multicore Applications Literature Number: SPRPxxx 1.
LECTURE #1 INTRODUCTON TO PARALLEL COMPUTING. 1.What is parallel computing? 2.Why we need parallel computing? 3.Why parallel computing is more difficult?
CDA-5155 Computer Architecture Principles Fall 2000 Multiprocessor Architectures.
Background Computer System Architectures Computer System Software.
Primitive Concepts of Distributed Systems Chapter 1.
PARALLEL AND DISTRIBUTED PROGRAMMING MODELS U. Jhashuva 1 Asst. Prof Dept. of CSE om.
These slides are based on the book:
Auburn University COMP8330/7330/7336 Advanced Parallel and Distributed Computing Parallel Hardware Dr. Xiao Qin Auburn.
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
Introduction to parallel programming
The Earth Simulator System
Multi-Processing in High Performance Computer Architecture:
Team 1 Aakanksha Gupta, Solomon Walker, Guanghong Wang
Overview Parallel Processing Pipelining
Multi-Processing in High Performance Computer Architecture:
Introduction to Operating Systems
By Brandon, Ben, and Lee Parallel Computing.
Distributed Computing:
Parallel Algorithm Models
Parallel Programming in C with MPI and OpenMP
Presentation transcript:

An introduction to the memory-distributed aspect of the code Arpege/Ifs/Aladin R. El Khatib Météo-France - CNRM/GMAP September, 2002

Introduction Law : T = s + P/n Shared memory architecture : * Several processors (yellow items) * Shared-access central memory (blue area) When the number of processors get huge, The performance collapses Because the memory access conflicts get preponderent ! Elapsed CPU time Number of processors Total CPU time in parallel part Total CPU time in serial part

Distributed memory architecture A machine divided per nodes : Communications between nodes to be coded by the programmer Possibility to build machines with up to 1000 or 2000 processors A node = A processor + A piece of central memory Inter-nodes communication system : « crossbar »

More about DM architecture Memory larger, cheaper …and slower Communications to be handled Calculation unit : scalar or vector processor Incoming supercomputers : calculation unit = cluster of scalar processors

Multitasking One master- processor executing the serial code Slave-processors activated on specific tasks by the master- processor

Message passing Processors running through the whole code But not executing the whole code Communications involved

Spectral data distribution

Gridpoint data distribution

« B-level » distribution Example : Truncation, 41 levels, Tl298, reduced grid 300 latitudes x 600 longitudes The « B-level » distribution enables us to reach the limits of the most powerful computers of today In spectral space = vertical level distribution « A »-level : up to 298 processors « A » + « B » levels : up to 298x41= processors In gridpoint space = longitudes distribution « A »-level : up to 300 processors « A » + « B » levels : up to processors

Consequenses in the code Local versus global variables : New control keys KEEP THE DISTRIBUTION SPIRIT IN MIND BEWARE OF THE PAST OF THE CODE (Shared memory heritage)