Libraries for Clustered Computing and a few other things ... - PowerPoint PPT Presentation

Libraries for clustered computing and a few other things l.jpg
Download
1 / 44

Libraries for Clustered Computing and a few other things . Anne E. Trefethen NAG Ltd, Oxford. What is NAG?. Mishi Derakhshan Nadir Bouhamou Vince Fernando Arnold Krommer. Stefano Salvini Lawrence Mulholland Sven Hammarling Jeremy DuCroz Ken McDonald. Acknowledgements.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Presentation

Libraries for Clustered Computing and a few other things ...

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Libraries for clustered computing and a few other things l.jpg

Libraries for Clustered Computingand a few other things...

Anne E. Trefethen

NAG Ltd, Oxford


What is nag l.jpg

What is NAG?

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Acknowledgements l.jpg

Mishi Derakhshan

Nadir Bouhamou

Vince Fernando

Arnold Krommer

Stefano Salvini

Lawrence Mulholland

Sven Hammarling

Jeremy DuCroz

Ken McDonald

Acknowledgements

The ScaLAPACK team

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag involvement in high performance computing l.jpg

NAG Involvement in High Performance Computing

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


A couple of general points l.jpg

A Couple of General Points

  • Important to NAG that libraries are portable across variety of platforms => Standards

  • The top 1% of machines are interesting but NAG needs to focus on a broader user base.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag s approach to hpc l.jpg

NAG’s approach to HPC

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Requirements from applications l.jpg

Requirementsfrom Applications

  • Algorithms for variety of memory hierarchies

  • Implementations for a variety of platforms

    • Accessible from a range of languages

    • Conforming with different parallel paradigms

  • Clean application interface

  • Tested and reliable

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag parallel library l.jpg

NAG Parallel Library

  • Scope

    • Library of parallel numerical subroutines

    • Assortment of support routines

  • Target: any parallel system with MPI/PVM

    • shared/distributed memory computers

    • networks/clusters of workstations

  • Goals: effectiveuse of multiple processors

  • effective use of distributed memory

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag parallel library design l.jpg

NAG Parallel Library - Design

  • Ease of use: routine interfaces

    • similar to sequential NAG Fortran routines

    • adhere to Single Program Multiple Data (SPMD) paradigm

    • provide distribution/in-place generation routines

  • Portability

    • Communication: BLACS + MPI/PVM

    • Computation: Fortran 77 + ANSI C

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide10 l.jpg

ScaLAPACK Structure

ScaLAPACK

PBLAS

LAPACK

BLACS

BLAS

PVM/MPI/...

Global

Local

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag parallel library design11 l.jpg

NAG Parallel Library - Design

  • Performance

    • computational routines assume data is in-place

    • link to machine-optimized BLAS, PBLAS, etc.

    • relaxed error checking

  • Reliability

    • NAG or LAPACK type error checking

    • global argument checking & error parameter

    • adhere to stringent NAG quality assurance standards

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide12 l.jpg

Distributed Memory Parallel Library

Matrix Distribution

Quadrature

Eigenproblems

Iterative Solvers

I/O utilities

Optimization

Random numbers

Direct Solvers (ScaLAPACK)

Least-Squares (ScaLAPACK)

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


P arallel i ndustrial n um e rical a pplications and p ortable l ibraries l.jpg

P I N E A P L

Parallel Industrial NumErical

Applications and Portable

Libraries


Pineapl project l.jpg

PINEAPL Project

  • EU Framework IV Project in HPCN

  • Duration: 01/96 - 01/99

  • 31.4 man-year effort

  • Total budget: 3.4 m ECU (2.1 m funded)

  • Consortium of 10 partners

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Project objectives l.jpg

Project Objectives

  • Development of a General-Purpose Library of Parallel Numerical Software

  • Suitable for Wide Range of Computationally Intensive Industrial Applications

  • Portable & Efficient Across a Wide Range of Parallel Machines

    • Distributed Multi-processor Machines

    • SMPs and Clusters of SMPs

    • Networks of Workstations and PCs

  • Incorporation into the NAG Parallel Library

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Pineapl consortium l.jpg

PINEAPL Consortium

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


End users applications l.jpg

BAe

Wing design: maximum lift/minimum drag

Electro-magnetics wave reflection of ducts

DHI

MIKE3: Estuarine and coastal hydraulics and oceanography - environmental simulation

Math-Tech

COSI: Oil reservoirsimulation

Piaggio

Engine simulation based on KIVA III: chemically reactant fluids with spray

Thomson

Nanometric recording devices

Beam propagation in diodes pumped rod lasers

End-users Applications

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Pineapl methodology l.jpg

PINEAPL Methodology

  • Analyse industrial application codes

  • Utilise numerical expertise in participating research organisations to design and develop relevant PINEAPL Library software

  • Parallelize application codes using Library

  • Benchmark resulting parallel end-user codes

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Pineapl library software l.jpg

PINEAPL Library Software

  • Sparse linear algebra

  • Mesh partitioning

  • PDE discretization and solution

  • (Un)Constrained non-linear optimization

  • FFTs: 1-, 2- and 3-dimensional

  • Banded and tridiagonal solvers

  • Dynamic load balancing

  • Utility and support routines

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Pineapl library rel 1 l.jpg

PINEAPL Library (rel 1)

  • Released February ‘98

  • Available free of charge for limited trial

  • Will be incorporated into Release 3 of NAG Parallel Library, due Q3 1998

  • Available for IBM SP2, SGI Origin 2000, Fujitsu AP3000, DEC Alpha SMPs, clusters of workstations, …

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


For further information l.jpg

For Further information:

http://www.nag.co.uk/projects/PINEAPL.html

To Use the Library:

Available under a collaborative agreement.

Contact Mishi Derakhshan

mishi@nag.co.uk

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag parallel library rel 3 l.jpg

NAG Parallel Library(rel 3)

  • Quantum leap in coverage! (~ 120 new)

    • Sparse linear algebra (~ 75 new)

    • Dense linear algebra

    • FFTs

    • Optimization

    • Graph partitioning

  • Tested in real-world industrial applications

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag fortran smp library l.jpg

NAG Fortran SMP Library

Release 1 of the NAG Library:

  • Launched at HPCN ‘97 (Vienna, April 1997)

  • Aimed (primarily) at cache-based SMP systems

  • Good one processor performance

  • Good scalability

  • Includes all NAG Fortran Library Interfaces

  • Over 50 routines benefit

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag fortran smp library24 l.jpg

NAG Fortran SMP Library

Parallelism on SMP systems:

  • Functional parallelism

  • Fork-Join Parallelism:

Parallel Region

Processes

Processes

Fork

Join

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag fortran smp library25 l.jpg

NAG Fortran SMP Library

  • Hide details of parallelism and system dependencies

  • Immediate migration of code between serial & SMP systems

  • Compiler directives:

    • single source codes for serial & SMP systems

    • rapid migration to other SMP platforms

  • Levels of parallel efficiency difficult to achieve otherwise

  • Easy access to high-performance for non-specialist

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag fortran smp library26 l.jpg

NAG Fortran SMP Library

SMP Library Parallelism coded as

Compiler Directives:

  • Coded comments ignored by Serial compiler

  • Different compilers have different directives grammar

  • Open MP: emerging standard for parallel compiler directives

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Compiler directives l.jpg

Compiler Directives

A “Bestiary” or Compiler Directives:

C$PAR SGI SMP systems

C*KAP* Digital Alphaservers (KAP)

C$PAR Sun SMP Systems

*PDIR NEC SX-4

!$OMP IBM SMP systems

!$OMP, C$OMP, *$OMP Open MP

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide28 l.jpg

Release 1 Contents

  • Dense Linear Algebra

    • LU, QRandCholeskyfactorizations and related solvers

    • Symmetric eigenproblem:

      • reduction totridiagonal form

      • Compute Q

      • QR algorithm foreigenvalues and/or eigenvectors

  • FFT

    • Library routines interface vendor routines when these are available and perform well

    • New complex storage interfaces

    • New Nag auxiliary routines when vendors’ not available/suitable

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide29 l.jpg

NAG SMP Library, Rel. 1

SGI SCS Library v1.0

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide30 l.jpg

NAG SMP Library, Rel. 1

MKL Library 2.1

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide31 l.jpg

NAG SMP Library, Rel. 1

SGI SCS Library v1.0

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Nag parallel libraries l.jpg

SMP

A library of numerical software including all the functionality of the NAG Fortran library,for SMP systems.

Provides a core set of high efficiency routines

Completely consistent interfaces and functionality with existing NAG products

NAG Parallel Libraries

  • Parallel

  • A library of numerical softwarefor distributed memory and shared memory systems

  • using either the PVM or MPI message-passing paradigms.

  • Future releases to benefit from development under PINEAPL project

  • Routines show good levels of performance and scalability

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Trends in hpc l.jpg

Trends in HPC

  • Hardware

    • Seems to be a convergence on the clustered SMP - Hybrid machines.

    • Multiprocessor NT boxes also leading toward clustered SMP machine architecture.

  • Software

    • Trends harder to predict

      • MPI here to stay?

      • OpenMP

      • HPF possible player

      • C++, Java ?

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Issues for hybrid systems l.jpg

Issues for hybrid systems

  • Software environment…

    • Open MP, MPI +

  • Algorithmic

    • Deepening Memory Hierarchy

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Ongoing investigation l.jpg

Ongoing Investigation

Consider the marriage of

Parallel Library

+

SMP Library

Networks of NT multiprocessor machines.

Hybrid architectures

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide36 l.jpg

Assuming an MPI + compiler directives

  • Questions on variety of architectures:

    • what can we gain over simple MPI

    • how portable are the algorithms across platforms

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Providing an infrastructure l.jpg

Providing an Infrastructure

  • Ease of use.

  • Distributed pieces of application.

  • Visualization of application.

  • Interaction with application.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide38 l.jpg

IRIS Explorer

  • Visual Programming

  • Drag and Drop

  • Modular

  • Extensible

  • Multi-platform

  • Heterogeneous network

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide39 l.jpg

Modules

Modules are the basic building blocks.

Module has input and output ports for data transmission.

User designed interface to module.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide40 l.jpg

Building an Application

  • Ports connected using mouse.

  • Connect to create a map - visual representation of program.

  • Can track execution through highlighted modules.

  • Parameters can be changed interactively.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide41 l.jpg

The Librarian

  • Contains modules and maps.

  • Can be dragged onto map editor and ‘launched’.

  • Modules can be categorized in Library.

  • Modules on remote machines accessed by machine librarian.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Slide42 l.jpg

The Module Builder

Extend IRIS Explorer. Interface to C, C++, Fortran.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Projects using and expanding iris explorer l.jpg

Projects using and Expanding IRIS Explorer

  • Julius - solving large PDE problems.

  • Decision - control systems.

  • Stable - Statistical environment.

    Integration of library routines, Corba-compliance, collaborative development...

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


Conclusion l.jpg

Conclusion

NAG has some of the right pieces …

...figuring out how to put them together.

Anne E. Trefethen Workshop on Clusters, Blackberry Farm


  • Login