The only (important?) components are parallel or distributed J.R. Cary Tech-X Corporation Review of components –Throw out some controversial statements.

Slides:



Advertisements
Similar presentations
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Advertisements

Numerical simulation of solute transport in heterogeneous porous media A. Beaudoin, J.-R. de Dreuzy, J. Erhel Workshop High Performance Computing at LAMSIN.
Chapter 10: Designing Databases
1 Modal methods for 3D heterogeneous neutronics core calculations using the mixed dual solver MINOS. Application to complex geometries and parallel processing.
UML an overview.
Simple but slow: O(n 2 ) algorithms Serial Algorithm Algorithm compares each particle with every other particle and checks for the interaction radius Most.
Topics covered: CPU Architecture CSE 243: Introduction to Computer Architecture and Hardware/Software Interface.
Introduction to Graph “theory”
Class CS 775/875, Spring 2011 Amit H. Kumar, OCCS Old Dominion University.
Inverse Cyclotrons for Intense Muon Beams – Phase I Kevin Paul Tech-X Corporation Don Summers University of Mississippi ABSTRACT: I will summarize the.
Plasma Astrophysics Chapter 3: Kinetic Theory Yosuke Mizuno Institute of Astronomy National Tsing-Hua University.
Efficient Parallelization for AMR MHD Multiphysics Calculations Implementation in AstroBEAR Collaborators: Adam Frank Brandon Shroyer Chen Ding Shule Li.
Reference: Message Passing Fundamentals.
CSE351/ IT351 Modeling And Simulation Choosing a Mesh Model Dr. Jim Holten.
Physics of fusion power Lecture 8: Conserved quantities / mirror / tokamak.
An Introduction to Breakdown Simulations With PIC Codes C. Nieter, S.A. Veitzer, S. Mahalingam, P. Stoltz Tech-X Corporation MTA RF Workshop 2008 Particle-in-Cell.
CSE 222 Systems Programming Graph Theory Basics Dr. Jim Holten.
Efficient Parallelization for AMR MHD Multiphysics Calculations Implementation in AstroBEAR.
Operating Systems CS208. What is Operating System? It is a program. It is the first piece of software to run after the system boots. It coordinates the.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Physics of fusion power Lecture 7: particle motion.
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
Parallel Adaptive Mesh Refinement Combined With Multigrid for a Poisson Equation CRTI RD Project Review Meeting Canadian Meteorological Centre August.
Superconductivity and Superfluidity The London penetration depth but also F and H London suggested that not only To which the solution is L is known as.
Parallel Programming Models Jihad El-Sana These slides are based on the book: Introduction to Parallel Computing, Blaise Barney, Lawrence Livermore National.
Shu Nishioka Faculty of Science and Technology, Keio Univ.
CCA Common Component Architecture Manoj Krishnan Pacific Northwest National Laboratory MCMD Programming and Implementation Issues.
Computational Design of the CCSM Next Generation Coupler Tom Bettge Tony Craig Brian Kauffman National Center for Atmospheric Research Boulder, Colorado.
What you will learn: You will determine how waves transfer energy You will describe wave reflection and discuss its practical significance.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Creational Patterns CSE301 University of Sunderland Harry R Erwin, PhD.
VORPAL Optimizations for Petascale Systems Paul Mullowney, Peter Messmer, Ben Cowan, Keegan Amyx, Stefan Muszala Tech-X Corporation Boyana Norris Argonne.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
© 2005 Prentice Hall10-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
18 April 2005CSci 210 Spring Design Patterns 1 CSci 210.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Electron behaviour in three-dimensional collisionless magnetic reconnection A. Perona 1, D. Borgogno 2, D. Grasso 2,3 1 CFSA, Department of Physics, University.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
Doc.: IEEE /0431r0 Submission April 2009 Alexander Maltsev, Intel CorporationSlide 1 Polarization Model for 60 GHz Date: Authors:
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
1 Outline Previous work on geometric and solid modeling Multiresolution models based on tetrahedral meshes for volume data analysis Current work on non-manifold.
I/O for Structured-Grid AMR Phil Colella Lawrence Berkeley National Laboratory Coordinating PI, APDEC CET.
CS 484 Designing Parallel Algorithms Designing a parallel algorithm is not easy. There is no recipe or magical ingredient Except creativity We can benefit.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
Parallel coupling: problems arising in the context of magnetic fusion John R. Cary Professor, University of Colorado CEO, Tech-X Corporation.
Data Distribution. Outline Fundamental concepts –Name space –Description expressions –Interest expressions Static Data Distribution: HLA Declaration Management.
Introduction to Active Directory
Modelling and Simulation of Passive Optical Devices João Geraldo P. T. dos Reis and Henrique J. A. da Silva Introduction Integrated Optics is a field of.
1 Rocket Science using Charm++ at CSAR Orion Sky Lawlor 2003/10/21.
Multiplication of vectors Two different interactions (what’s the difference?)  Scalar or dot product : the calculation giving the work done by a force.
C OMPUTATIONAL R ESEARCH D IVISION 1 Defining Software Requirements for Scientific Computing Phillip Colella Applied Numerical Algorithms Group Lawrence.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
WELCOME TO OUR PRESENTATION UNIFIED MODELING LANGUAGE (UML)
GPU Acceleration of Particle-In-Cell Methods B. M. Cowan, J. R. Cary, S. W. Sides Tech-X Corporation.
Unstructured Meshing Tools for Fusion Plasma Simulations
The Movement To Objects
Review for Final, Fall 2010 Close book, Close notes
Instruction Set Architecture
Data Structures for Efficient and Integrated Simulation of Multi-Physics Processes in Complex Geometries A.Smirnov MulPhys LLC github/mulphys
Parallel Programming By J. H. Wang May 2, 2017.
PHYS 1444 – Section 501 Lecture #5
Parallel 3D Finite Element Particle-In-Cell Simulations with Pic3P*
Object Oriented Analysis and Design
Fluid Theory: Magnetohydrodynamics (MHD)
Mikhail Z. Tokar and Mikhail Koltunov
Presentation transcript:

The only (important?) components are parallel or distributed J.R. Cary Tech-X Corporation Review of components –Throw out some controversial statements –Looking for feedback A registry based successful approach to flexibility Additional requirements from inhomogeneous parallelism Baby steps towards parallel registries

Parallel components 2 The component: path to software Nirvana May present multiple interfaces –All things to all people? –Interfaces must be known Need not be known at link time –Found in the afterlife

Parallel components 3 For single address space, what distinguishes a component from an object? Components have well defined interfaces Components can have multiple interfaces Components can be stateful Components can be singletons (shared object lib with static data) Objects have well defined interfaces Objects can have multiple interfaces (multiple inheritance) Objects can be stateful Objects can be singletons

Parallel components 4 Parallelism is "where it's at" for components Domain 0 to Domain 1: “Give me your left border cells” Domain 0 to Domain 3: “Give me your upper- left corner cell” Each domain provides different data (even interface) to each processor Domain 1 Domain 0 Domain 2 Domain 3 Even with just domain decomposition one now has components

Parallel components 5 You can do a heck of a lot with the above model VORPAL: all first-level objects (particles, fields, collision operators) exist on all domains and so are constructed on all. All interactions through first-leve objects only Second-level objects (surface emitters, boundary conditions) exist on only those procs with geometry containing that object.

Parallel components 6 Construction is through a object definition language numPhysCells = [NX NY NZ] lengths = [LX LY LZ] startPositions = [XSTART YSTART ZSTART] kind = emMultiField # Electric field numComponents = 3 numGuardCells = [1 1] offset = edge # Set E_y and E_z to zero on left boundary kind = constant lowerBounds = [ ] upperBounds = [1 NY1 NZ1] indices = [1 2] amplitudes = [0. 0.] Startup: register implementations Prior to connection time: register instances

Parallel components 7 FACETS project requires more complex coupling Closed field lines: slow perpendicular + fast parallel transport  Quantities 1D Hot plasma  Collisionless, no significant atomic physics (except beams) Open field lines (or close to): so parallel transport must balance perpendicular  Quantities are 2D Cool plasma  Collisional, atomic physics is important Plasma-wall interaction is 2D  Core is essentially 1D Edge is 2D Wall is a collection of 1D equations

Parallel components 8 Idealized view: surfacial couplings between phase transitions Core is a collisionless, 1D transport system with local, only-cross-surface fluxes Edge is a collisional, 2D transport system Wall: beginning of a particle trapping matrix 1D and 2D surfacial couplings same points wallwall Coupling

Parallel components 9 Many components, many processors, many interfaces Each object exists on a subset of the processors Connecting each with other components makes life worse Doing a one-off is not going to help the larger problem Core Wall Communicate among selves to get averaged values Edge component by itself has a complex topology (a regular mesh is worth a lot of contortions) Wall

Parallel components 10 Abstraction: processor groups, objects, interfaces Processor group (MPI communicator) on which one has objects (may overlap) Objects must register interfaces with processor group Must be able to query proc group for interfaces

Parallel components 11 We need a language to describe this Self discovery will not work –Inquire of processors what they have? Instead: –Global component created –Creates subcomponents (with associated communicators) on subsets of procs –Sub components contains components –At each level, can register with parent or arbitrarily high up in containment

Parallel components 12 We are starting on this in FACETS kind = parComposer ## Define coupler kind = aBCoupler kind = seqComposer load =

Parallel components 13 No conclusions: work in progress Flexibility obtained by registry concept –Implementations –Instances Need to generalize for heterogeneous case without building everything everywhere