Date post: | 01-Jan-2016 |
Category: |
Documents |
Upload: | bruno-solomon |
View: | 33 times |
Download: | 0 times |
Advanced Simulation and Computing (ASC) Academic Strategic Alliances Program (ASAP) Center
at The University of Chicago
The Center for Astrophysical Thermonuclear Flashes
The FLASH CodeParallel AMR Made Easy
Tomek Plewa
LACSI SymposiumSanta Fe, 10/12/2004
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Outline
FLASH CenterAstrophysics as primary application
Verification and Validation activities
External contributors and users
FLASH CodeView from the outside
Source tree and functionalityUser level
Problem configuration
Intra-module modifications
Developer levelExtending the source tree
Inter-module communications
Summary
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Application: Astrophysics
Target ApplicationsCompact accreting stars (white dwarf, neutron star)
Reactive hydrodynamics (DNS or subgrid model)
Initial conditions close to hydrostatic equilibrium (self-gravity)
Complex EOS (dense nuclear matter)
Example: Type Ia SupernovaMassive white dwarf
Subgrid model for nuclear flame
Self-gravity
Degenerate EOS
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Length scales in White Dwarf Deflagration
Before 2000
Now
BG/L
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Verification & Validation Program
Verification: solving equations right
Validation: solving the right equations
Verification ranging from simple analytic problems to code-code comparison.
Validation: no direct access to experiments, use scaling laws
Absolutely NO culture of validation in astrophysics!
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Verification
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH V&V Complete Example
Experimental time series, water/glycol fog visualization of SF6 mole fraction.
Images correspond to 50, 190, 330, 470, 610, and 750 s after shock impact
Composite image does not preserve time-distance relationship
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
AMR-generated Timestep-dependent Signal
CFL=0.8
CFL=0.2
CFL=0.4
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
AMR-generated Timestep-dependent Signal
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH As An Open Source Research Code
FLASH is community code, freely (with minimal restrictions) available for research
External contribution: shock-cylinder experiment (Jacobs, LANL)
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Center and AMR Community
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code
Primary objective
To create robust, reliable, efficient and expandable code, that stands the test of time and users.
Primary characteristics
parallel
adaptive mesh (possibly different mesh packages)
block-structured (currently)
multi-physics (hydro, MHD, SRHD, gravity, particles…)
Fortran 9x
portable
freely accessible
documented & actively maintained
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code As Seen From The Outside
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Portability: BG/L
Successful early runs up to 2048 processors
Communication is scaling well. Test size limited
by small number of available processors.
Large runs scheduled
Several days of 16K-32K processors.
Focusing on FLOPS
Make up for slower CPUs, beta-compilers
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Code Access
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Source Tree And Functionality
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Source Tree And Functionality
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Driver
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Driver
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Hydrodynamics Unit
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH EOS Unit
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Unit Hierarchy
API/
Stubs
Common API Impl
API impl
Wrapper
kernel
API impl API impl
Wrapper
kernel
Wrapper
kernel
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Solvers: Poisson
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Source Terms
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Common Fabric
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Inter-Module Connectivity
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Inter-Module Connectivity
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Putting It All Together
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Config Files
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Setups
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Setup Example
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Initial Conditions
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Configuring FLASH Application
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Application Build Tree
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Documentation
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Visualization
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
FLASH Results
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Summary
Overall architectureUnit typesUnit architectureNear future
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Summary: Architecture
Setup toolassemble application
Config filesdefine components
Driver moduleorganize interactions
Unit ArchitectureAPI
InheritanceData management
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Summary: Units Types
Physicshydrogravity
InfrastructuredrivergridI/O
Utilityprofilerruntime visualization
Data analysisFidlrflashview
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Wrapper
Summary: Unit Architecture
Driver
Top level:•API
•Unit Test
Grid Data Module
patch datatime step
etc
Kernel
The ASC/Alliances Center for Astrophysical Thermonuclear FlashesThe University of Chicago
Near Future: FLASH3
FLASH original design was very Paramesh-likeblock structured
fixed size blocks
specified at compile time
every section of the code assumed knowledge of block size
Relaxing the constrain opens up possibilities of usingvariable block size mesh
patch based mesh
non-uniform non-adaptive mesh
uniform grid without unnecessary overheads