the acts toolkit (what can it do for you?) osni marques and tony drummond ( lbnl/nersc )...

31
The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond (LBNL/NERSC) [email protected]

Upload: austin-hensley

Post on 12-Jan-2016

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

The ACTS Toolkit(What can it do for you?)

Osni Marques and Tony Drummond

(LBNL/NERSC)

[email protected]

Page 2: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 2

http://acts.nersc.gov

What is the ACTS Toolkit?

• Advanced Computational Testing and Simulation

• Tools for development of parallel applications• 21 tools

• developed (primarily) at DOE labs

• originally conceived as autonomous tools

• ACTS is an “umbrella” project• collect tools

• leverage numerous independently funded projects

Page 3: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 3

http://acts.nersc.gov

ACTS Project Goals

• Bring software packages together into a “toolkit”

• Make the software interoperable

• Provide consistent application interfaces

• Promote general solutions to parallel programming needs

• Promote code reusability

• Enable large scale applications

• Impact DOE science

Page 4: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 4

http://acts.nersc.gov

Recent Successful Cases

Scattering in a quantum system of three charged particles (Rescigno, Baertschy, Isaacs and McCurdy, Dec. 24, 1999).

Cosmic Microwave Background Analysis, BOOMERanG collaboration, MADCAP

code (Apr. 27, 2000).

Page 5: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 5

http://acts.nersc.gov

NERSC Activities

• Make ACTS tools available on NERSC platforms

• Provide technical support ([email protected])

• Perform independent evaluation of tools

• Maintain online ACTS information center

• Identify new users who can benefit from toolkit

• Work with users to integrate tools into applications

Page 6: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 6

http://acts.nersc.gov

ACTS Information Online

• Information center • coordinated and integrated with developers resources

• general information and pointers to documentation

• User-oriented information• Which tool should I use to solve my problem?

• Which tools are ready for prime time?

• Reviews: strengths, weaknesses, caveats, etc

Page 7: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 7

http://acts.nersc.gov

ACTS Support

• Support at different levels • applications

• code optimization

• tool selection

• tool utilization

• tool installation

• Leverage with developers

• Minimize risk to users

Page 8: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 8

http://acts.nersc.gov

Tools Categorization

• Numerical software that implements numerical algorithms

• Structural (“frameworks”) software that manages data, communication

• Infra-structural runtime, support tools, developer’s bag

Page 9: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 9

http://acts.nersc.gov

Numerical Tools

• Aztec: iterative methods for solving sparse linear systems

• Hypre: collection of advanced preconditioners

• Opt++: solution of nonlinear optimization problems

• PETSc: methods for the solution of PDE related problems

• PVODE: solvers for large systems of ODE’s

• ScaLAPACK: dense linear algebra computations

• SuperLU: direct methods for sparse linear systems

Page 10: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 10

http://acts.nersc.gov

Structural (Frameworks)

• Global Arrays: portable, distributed array library, shared memory style of programming

• Overture: library of grid functions which derives from P++ arrays

• POET (Parallel Object-oriented Environment and Toolkit): allows for “mixing and matching” of components

• POOMA (Parallel Object-Oriented Methods and Applications): C++ abstraction layer between algorithm and platform (similar to HPF)

Page 11: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 11

http://acts.nersc.gov

Infra-structural

• CUMULVS (Collaborative User Migration User Library for Visualization and Steering), PAWS (Parallel Application WorkSpace): computational steering, data post-processing, interactive visualization

• Globus: infrastructure for high performance distributed computing (computational grids)

• SILOON (Scripting Interface Languages for Object-Oriented Numerics): scripting features

• TAU (Tuning and Analysis Utilities): advanced performance

analysis and tuning

Page 12: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 12

http://acts.nersc.gov

Infra-structural (cont.)

• Tulip: C++ applications with threads, global pointers and other

parallel operations

• ATLAS (Automatically Tuned Linear Algebra Software), PHiPAC (Portable High Performance ANSI C): automatic generation of optimized numerical software (mainly BLAS)

• Nexus: multithreading, communication and resource management facilities

• PADRE (Parallel Asynchronous Data and Routing Engine) : abstracts the details of representing and managing distributed data

• PETE (Portable Expression Template Engine): efficient C++ operator overloading through expression templates

Page 13: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 13

http://acts.nersc.gov

Tool Status at NERSC

• Installed and supported (modules,T3E and SP) • Aztec

• PETSc

• ScaLAPACK

• SuperLU

• TAU

• Known to have been used (T3E)• CUMULVS

• Global Arrays

• Globus

• POOMA

• PVODE

Page 14: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 14

http://acts.nersc.gov

Aztec

• Solves large sparse linear systems on distributed memory machines

• Implements Krylov iterative methods (CG, CGS, Bi-CG-Stab, GMRES, TFQMR)

• Suite of preconditioners (Jacobi, Gauss-Seidel, overlapping domain decomposition with sparse LU, ILU, BILU within domains)

• Highly efficient, scalable (1000 processors on the “ASCI Red” machine)

Page 15: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 15

http://acts.nersc.gov

Aztec (applications)

TOUGH2 (Transport Of Unsaturated Groundwater and Heat) code, transport simu-lation in porous and fractured media (LBNL).

Co-flowing Annular Jet Combuster, a parallel 3D pseudo-transient simulation to

steady state operation; MPSalsa code (SNL).

Page 16: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 16

http://acts.nersc.gov

Aztec (basic steps)

• Prepare your linear system• distribute the matrix

• call AZ_transform• set up right-hand side and initial guess

• call AZ_reorder_vec on initial guess and right-hand side

• selective an iterative solver and a preconditioner

• call AZ_solve• call AZ_invorder_vec on solution

Page 17: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 17

http://acts.nersc.gov

PETSc

• Linear and nonlinear solvers• Data structures for distributed vectors and sparse matrices• 5 matrix storage formats• It has been integrated with Aztec• 10+ Krylov iterative subspace methods• Preconditioners include Jacobi, additive overlapping

Schwartz, parallel ILU(0), etc• Modular, object design methodology• C and Fortran interfaces• Can be used as a front end to other ACTS tools

Page 18: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 18

http://acts.nersc.gov

PETSc (applications)

Multiphase flow, 4 million cell blocks, 32 million DOF, over 10.6 Gflops on an IBM SP (128

nodes), entire simulation runs in less than 30 minutes (Pope, Gropp, Morgan, Seperhrnoori,

Smith and Wheeler).

Prometheus code (unstructured meshes in solid mechanics), 26 million DOF, 640

nodes on NERSC’s Cray T3E (Adams and Demmel).

Page 19: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 19

http://acts.nersc.gov

ScalaPACK

• Parallel version of LAPACK

• Based on BLACS (Basic Linear Algebra Communication Subroutines)

• Dense linear algebra (BLAS)

• Direct solution of linear systems

• Dense matrix eigensolvers

Page 20: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 20

http://acts.nersc.gov

ScaLAPACK (applications)

Induced current (white arrows) and charge density (colored plane and gray surface) in crystallized

glycine due to an external field (Louie, Yoon, Pfrommer and Canning).

Cosmic Microwave Background Analysis, BOOMERanG collaboration, MADCAP

code (Apr. 27, 2000).

Page 21: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 21

http://acts.nersc.gov

SuperLU

• Direct solution of large sparse linear systems

• Shared and distributed memory implementations

• Attained 8.3 Gflops on 512 nodes of the T3E

Page 22: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 22

http://acts.nersc.gov

SuperLU (applications)

Scattering in a quantum system of three charged particles (Rescigno, Baertschy,

Isaacs and McCurdy, Dec. 24, 1999).

SuperLU speedup (matrices dimension varying from 26028 to 120750).

Page 23: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 23

http://acts.nersc.gov

TAU

• Profiling of Fortran 90, C, C++, HPF, and HPC++ codes

• Detailed information (much more than prof/gprof)

• C++: per-class and per-instance profiling

• Graphical display of profiling results (built-in viewers, interface to Vampir)

Page 24: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 24

http://acts.nersc.gov

TAU (Main Control Window)

• COSY: COmpile manager Status displaY• FANCY: File ANd Class displaY• CAGEY: CAll Graph Extended displaY• CLASSY: CLASS hierarchY browser• RACY: Routine and data ACcess profile displaY• SPEEDY: Speedup and Parallel Execution Extrapolation DisplaY

Page 25: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 25

http://acts.nersc.gov

TAU (SPEEDY)

Page 26: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 26

http://acts.nersc.gov

Coming up

• Hypre

• PVODE

• POOMA

• Globus

• PETE (summer student)

• Survey of iterative linear solver packages

Page 27: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 27

http://acts.nersc.gov

PVODE and POOMA

PVODE is being used in the ParFlow ground-water flow project to solve three-dimensional models of fluid flow and chemical transport

through heterogeneous porous media (LNNL).

MC++ Monte Carlo neutron transport simulation written using the Tecolote

framework, which is built atop POOMA, (ASCI Blanca project, LANL).

Page 28: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 28

http://acts.nersc.gov

Globus

• Provides means for creating a large scale computational grid

• A toolkit of core services with which applications can be developed to access the grid.

• Operates with other ACTS tools (like CUMULVS, PAWS and Nexus)

Page 29: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 29

http://acts.nersc.gov

Globus (cont.)

NASA’s Information Power Grid (IPG)

joins supercomputers and storage devices owned by participating organizations into a single, seamless

computing environment.

With a Globus-enabled X-ray microto-mography program a fully 3-D reconstruction

of an ant head (2mm in diameter) was obtained in less than 10 minutes using the

acquisition hardware at a beamline at ANL and an SGI Origin 2000 at NPACI.

Page 30: The ACTS Toolkit (What can it do for you?) Osni Marques and Tony Drummond ( LBNL/NERSC ) acts-support@nersc.gov

06/06/2000 NUG/ORNL 30

http://acts.nersc.gov

Future Directions

• CCA (Common Component Architecture)• Developing standardized ways of managing numerical

components to allow mixing-and-matching

• Frameworks for gluing components together

• Similarities to CORBA, DCOM, Java Beans

• Scientific interface description language (allowing Fortran)

• ESI (Equation Solver Interface)• Developing standardized interfaces for scalable linear solvers

• Specific test case for CCA component design