1 / 12

Connections to Other Packages

Connections to Other Packages. The Cactus Team Albert Einstein Institute cactus@cactuscode.org. Why Link to Other Packages?. Cactus is a framework or middleware for unifying and incorporating code from Thorns

isleen
Download Presentation

Connections to Other Packages

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Connections to Other Packages The Cactus Team Albert Einstein Institute cactus@cactuscode.org

  2. Why Link to Other Packages? • Cactus is a framework or middleware for unifying and incorporating code from Thorns • The Cactus Computational Toolkit is a set of Thorns which provide different capabilities, such as interpolation and IO • Philosophy: • provide users with as much choice and variety as possible. • External packages developed and maintained by experts in the respective fields. Cactus developers don’t need to reinvent the wheel, package developers get more users, users get better tools. • Cactus developers concentrate on generic interfaces.

  3. Cactus can make use of ... Autopilot FlexIO (IEEEIO/HDF5) Globus GrACE HDF5 MPI Panda IO PAPI PETSc

  4. AutoPilot • Dynamic performance instrumentation, on-the-fly performance data reduction, resource management algorithms, real-time adaptive control mechanism • Cactus provides a mechanism to register timers, and Autopilot is currently being integrated. http://www-pablo.cs.uiuc.edu/Project/Autopilot/AutopilotOverview.htm http://www.cactuscode.org/Documentation/HOWTO/Performance-HOWTO http://www.cactuscode.org/Projects.html

  5. FlexIO (IEEEIO) IEEEIO readers for: Amira AVS IDL LCA Vision NAG Explorer • FlexIO is a compact multi-platform API for storing multidimensional scientific data. It hides the differences between underlying file formats including HDF5 and IEEEIO. • IEEEIO is a compact library for storing multidimensional scientific data in a binary format that can be transported between different computer systems. • Cactus thorn CactusPUGHIO/IOFlexIO outputs multidimensional data using the IEEEIO library. http://zeus.ncsa.uiuc.edu/~jshalf/FlexIO/ http://zeus.ncsa.uiuc.edu/~jshalf/FlexIO/IEEEIO.html http://www.cactuscode.org/Documentation/HOWTO/Visualization-HOWTO Documentation in thorns CactusBase/IOUtil and CactusPUGHIO/IEEEIO

  6. Globus Toolkit • Globus Toolkit: Enables application of Grid concepts to scientific and engineering computing • Cactus (with the default MPI driver) compiles with Globus (1.0/1.1), using MPICH-G. • Cactus can then be run using RSL scripts as usual with Globus The Grid: Dependable, consistent, pervasive access to [high-end] resources Collaborative engineering Browsing of remote datasets Use of remote software Data-intensive computing Very large-scale simulation Large-scale parameter studies http://www.globus.org/ http://www.cactuscode.org/Documentation/HOWTO/Globus-HOWTO http://jean-luc.aei-potsdam.mpg.de/SC98/

  7. GrACE • Parallel/distributed AMR via C++ library • Abstracts Grid Hierarchies, Grid Functions and Grid Geometries • CactusPAGH will include a driver thorn which uses GrACE to provide AMR (KDI ASC Project) http://www.caip.rutgers.edu/~parashar/TASSL/Projects/GrACE/index.html http://www.cactuscode.org/Workshops/NCSA99/talk23/index.htm

  8. HDF5 • Hierarchical data format for scientific data management (I/O libraries and tools). • Future standard, overcomes limitations of HDF4. Simple but powerful model, includes hyperslabs, datatype conversion, parallel IO. • Used for 2D/3D output in Computational Toolkit (CactusPUGHIO/IOHDF5) • Much development in (remote) visualization and steering with Cactus uses HDF5 • Readers for Amira, OpenDX, (LCA Vision). http://hdf.ncsa.uiuc.edu/HDF5/ http://www.CactusCode.org/Documentation/UsersGuide_html/node15.html http://www.cactuscode.org/Documentation/HOWTO/Visualization-HOWTO Documentation in thorns CactusBase/IOUtil and CactusPUGHIO/IOHDF5

  9. MPI (Message Passing Interface) • The default Cactus driver uses MPI for processor communications (CactusPUGH/PUGH). • Cactus supports most implementations of MPI, including Native MPI on many architectures, as well as MPICH, MPICH-G(2), LAM, WMPI, PACX and HPVM. http://www-unix.mcs.anl.gov/mpi/ http://www-unix.mcs.anl.gov/mpi/mpich/ http://www.mpi.nd.edu/lam/ http://dsg.dei.uc.pt/w32mpi/intro.html http://www.hlrs.de/structure/organisation/par/projects/pacx-mpi/ http://www.cactuscode.org/Documentation/UsersGuide_html/node14.html

  10. Panda IO • Data management techniques for I/O intensive applications in high-performance scientific computing. • Simpler, more abstract interfaces, efficient layout alternatives for multidimensional arrays, high performance array I/O operations. • Thorn IOPanda http://cdr.cs.uiuc.edu/panda/ http://www.cactuscode.org/Workshops/NCSA99/talk13/sld003.htm

  11. PAPI • Standard API for accessing the hardware performance counters on most microprocessors. • Useful for tuning, optimisation, debugging, benchmarking, etc. • Java GUI available for monitoring the metrics • Cactus thorn CactusPerformance/PAPI http://icl.cs.utk.edu/projects/papi/ http://www.cactuscode.org/Documentation/HOWTO/Performance-HOWTO http://www.cactuscode.org/Projects.html

  12. PETSc • MPI based suite of data structures and routines for parallel solution of PDEs. Employs the MPI standard for message passing communication. • Cactus grid variables can be used to setup linear/non-linear systems and have them solved by PETSc. • The Scalable Linear Equations Solvers (SLES) provide an interface to the combination of a Krylov subspace iterative method and a preconditioner or a sequential direct solver. • The Scalable Nonlinear Equations Solvers (SNES) component provide an interface to Newton-based methods for solving systems of nonlinear equations. http://www-fp.mcs.anl.gov/petsc/ http://www.cactuscode.org/Documentation/HOWTO/PETSc-HOWTO http://www.cactuscode.org/Workshops/NCSA99/talk11/

More Related