Download presentation
Presentation is loading. Please wait.
1
Kathy Yelick, 1 Advanced Software for Biological Simulations Elastic structures in an incompressible fluid. Blood flow, clotting, inner ear, embryo growth, … Complicated parallelization Particle/Mesh method, but “Particles” connected into materials (1D or 2D structures) Communication patterns irregular between particles (structures) and mesh (fluid) Joint work with Ed Givelberg, Armando Solar-Lezama, Charlie Peskin, Dave McQueen 2D Dirac Delta Function Code Size in Lines FortranTitanium 80004000 Note: Fortran code is not parallel
2
2 Kathy Yelick Software Architecture Application Models Generic Immersed Boundary Method (Titanium) Heart (Titanium) Cochlea (Titanium+C) Flagellate Swimming … Spectral (Titanium + FFTW) AMR Extensible Simulation Solvers Multigrid (Titanium) Can add new models by extending material points Can add new Navier-Stokes solvers IB software and Cochlea by E. Givelberg; Heart by A. Solar based on Peskin/McQueen existing components Source: www.psc.org
3
Kathy Yelick, 3 Titanium: Java for Scientific Computing Java plus high performance parallelism No JVM; compiled to assembly (via C for portability) Features added to Java: PGAS model with SPMD execution and one-side communication Multi-dimensional rectangular arrays Locality qualification: the local keyword Lightweight (value) classes for Complex, etc. C++ like templates and operator overloading Zone-based memory management Titanium runs on shared & distributed memory
4
Kathy Yelick, 4 Coding Challenges: Block-Structured AMR Adaptive Mesh Refinement (AMR) is challenging Irregular data accesses and control from boundaries Mixed global/local view is useful AMR Titanium work by Tong Wen and Philip Colella Titanium AMR benchmark available
5
Kathy Yelick, 5 Languages Support Helps Productivity C++/Fortran/MPI AMR Chombo package from LBNL Bulk-synchronous comm: Pack boundary data between procs All optimizations done by programmer Titanium AMR Entirely in Titanium Finer-grained communication No explicit pack/unpack code Automated in runtime system General approach Language allow programmer optimizations Compiler/runtime does some automatically Work by Tong Wen and Philip Colella; Communication optimizations joint with Jimmy Su
6
Kathy Yelick, 6 Performance of Titanium AMR Serial: Titanium is within a few % of C++/F; sometimes faster! Parallel: Titanium scaling is comparable with generic optimizations - optimizations (SMP-aware) that are not in MPI code - additional optimizations (namely overlap) not yet implemented Comparable parallel performance Joint work with Tong Wen, Jimmy Su, Phil Colella
7
Kathy Yelick, 7 Particle/Mesh Method: Heart Simulation Elastic structures in an incompressible fluid. Blood flow, clotting, inner ear, embryo growth, … Complicated parallelization Particle/Mesh method, but “Particles” connected into materials (1D or 2D structures) Communication patterns irregular between particles (structures) and mesh (fluid) Joint work with Ed Givelberg, Armando Solar-Lezama, Charlie Peskin, Dave McQueen 2D Dirac Delta Function Code Size in Lines FortranTitanium 80004000 Note: Fortran code is not parallel
8
Kathy Yelick, 8
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.