Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
machine-configs
package-builders
tests
LICENSE
NOTICE
README.md
go.sh

README.md

CEED Benchmarks

This repository contains bake-off/benchmark problems and other tests for performance evaluation of high-order kernels on HPC architectures developed in the ECP co-design Center for Efficient Exascale Discretizations (CEED).

The repository 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.

For more details on the CEED benchmarks see http://ceed.exascaleproject.org/bps/

Building and Running the Benchmarks

Required tools

  • bash
  • make, cmake (for some packages)
  • git
  • wget or curl

Sample use

First, you may need to create a configuration for your machine, e.g. by copying and modifying one of the existing machine-configs/*.sh files.

./go.sh --config vulcan --compiler gcc --build "metis hypre mfem"
./go.sh --config vulcan --compiler gcc --run tests/mfem_bps/bp1_v1.sh

Equivalent short version:

./go.sh -c vulcan -m gcc -b "metis hypre mfem"
./go.sh -c vulcan -m gcc -r tests/mfem_bps/bp1_v1.sh

Note that any packages required by the tests will be downloaded and built automatically, i.e. there is no need to explicitly pre-build any packages by running the go.sh script with the --build option.

To see a list of the available configs use ./go.sh without any options or generally use ./go.sh --help for help. These configs correspond to the scripts machine-configs/<name>.sh.

To see the available compilers for a config use ./go.sh --config <name>.

For test-specific details, see the README.md file in the corresponding tests/<test-suite> subdirectory.

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 for details.