README.md
March 28, 2020 · View on GitHub
__ __
/ / ____ ____ / /_ ____ _____
/ / / __ `/ __ `/ __ \/ __ \/ ___/
/ /___/ /_/ / /_/ / / / / /_/ (__ )
/_____/\__,_/\__, /_/ /_/\____/____/
/____/
High-order Lagrangian Hydrodynamics Miniapp
SERIAL version
Overview
This directory contains the SERIAL version of the Laghos (LAGrangian High-Order Solver), which is provided as a reference implementation and is NOT the official benchmark version of the miniapp.
For more details about Laghos see the README file in the top-level directory.
The Laghos miniapp is part of the CEED software suite, a collection of software benchmarks, miniapps, libraries and APIs for efficient exascale discretizations based on high-order finite element and spectral element methods. See http://github.com/ceed for more information and source code availability.
The CEED research is supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of two U.S. Department of Energy organizations (Office of Science and the National Nuclear Security Administration) responsible for the planning and preparation of a capable exascale ecosystem, including software, applications, hardware, advanced system engineering and early testbed platforms, in support of the nation’s exascale computing imperative.
Differences with the official benchmark version
The serial version differs from the official benchmark version of Laghos (in the top-level directory) in the following ways:
- No differences.
Building
The serial version of Laghos has the following external dependencies:
- MFEM, used for (high-order) finite element discretization.
To build the miniapp, first clone and build MFEM:
~> git clone https://github.com/mfem/mfem.git ./mfem
~> cd mfem/
~/mfem> make serial -j
~/mfem> cd ..
See the MFEM building page for additional details.
(Optional) Clone and build GLVis:
~> git clone https://github.com/GLVis/glvis.git ./glvis
~> cd glvis/
~/glvis> make
~/glvis> cd ..
The easiest way to visualize Laghos results is to have GLVis running in a
separate terminal. Then the -vis option in Laghos will stream results directly
to the GLVis socket.
Build Laghos
~> cd Laghos/serial
~/serial> make
This can be followed by make test and make install to check and install the
build respectively. See make help for additional options.
Running
The serial version can run the same examples as the official benchmark version of Laghos, without MPI parallelization.
Verification of Results
To make sure the results are correct, we tabulate reference final iterations
(step), time steps (dt) and energies (|e|) for the runs listed below:
./laghos -p 0 -dim 2 -rs 3 -tf 0.75 -pa./laghos -p 0 -dim 3 -rs 1 -tf 0.75 -pa./laghos -p 1 -dim 2 -rs 3 -tf 0.8 -pa./laghos -p 1 -dim 3 -rs 2 -tf 0.6 -pa./laghos -p 2 -dim 1 -rs 5 -tf 0.2 -fa./laghos -p 3 -m ../data/rectangle01_quad.mesh -rs 2 -tf 3.0 -pa./laghos -p 3 -m ../data/box01_hex.mesh -rs 1 -tf 3.0 -pa./laghos -p 4 -m ../data/square_gresho.mesh -rs 3 -ok 3 -ot 2 -tf 0.62831853 -s 7 -pa
run | step | dt | e |
|---|---|---|---|
| 1. | 339 | 0.000702 | 4.9695537349e+01 |
| 2. | 1041 | 0.000121 | 3.3909635545e+03 |
| 3. | 1154 | 0.001655 | 4.6303396053e+01 |
| 4. | 560 | 0.002449 | 1.3408616722e+02 |
| 5. | 413 | 0.000470 | 3.2012077410e+01 |
| 6. | 2872 | 0.000064 | 5.6547039096e+01 |
| 7. | 528 | 0.000180 | 5.6505348812e+01 |
| 8. | 776 | 0.000045 | 4.0982431726e+02 |
Similar GPU runs using the MFEM CUDA device can be run as follows:
./laghos -p 0 -dim 2 -rs 3 -tf 0.75 -pa -d cuda./laghos -p 0 -dim 3 -rs 1 -tf 0.75 -pa -d cuda./laghos -p 1 -dim 2 -rs 3 -tf 0.80 -pa -d cuda./laghos -p 1 -dim 3 -rs 2 -tf 0.60 -pa -d cuda./laghos -p 2 -dim 1 -rs 5 -tf 0.20 -fa./laghos -p 3 -m ../data/rectangle01_quad.mesh -rs 2 -tf 3.0 -pa -d cuda./laghos -p 3 -m ../data/box01_hex.mesh -rs 1 -tf 3.0 -pa -cgt 1e-12 -d cuda./laghos -p 4 -m ../data/square_gresho.mesh -rs 3 -ok 3 -ot 2 -tf 0.62831853 -s 7 -pa -d cuda
An implementation is considered valid if the final energy values are all within round-off distance from the above reference values.
Contact
You can reach the Laghos team by emailing laghos@llnl.gov or by leaving a comment in the issue tracker.
Copyright
The following copyright applies to each file in the CEED software suite, unless otherwise stated in the file:
Copyright (c) 2017, Lawrence Livermore National Security, LLC. Produced at the Lawrence Livermore National Laboratory. LLNL-CODE-734707. All Rights reserved.
See files LICENSE and NOTICE in the top-level directory for details.