CEED Bake-off Problems (Benchmarks)

This page contains the specifications of CEED's bake-off problems: high-order kernels/benchmarks designed to test and compare the performance of high-order codes.

Short Summary

This section is a just a quick reference using the notation from the Terminology and Notation section below (cf. libCEED documentation).

For more details and software, see the follow-on sections.

Bake-off Problems (BPs)

These are all T-vector-to-T-vector and include parallel scatter + element scatter + element evaluation kernel + element gather + parallel gather.

The boundary conditions for BP1 and BP2 are homogeneous Neumann. For the rest of the BPs the boundary conditions are homogeneous Dirichlet.

The nodal points, denoted by $p$, are GLL (Gauss-Legendre-Lobatto), while the quadrature points, denoted by $q$, are GL (Gauss-Legendre) for BP1-BP4 and GLL for BP5-BP6.

Bake-off Kernels (BKs)

The BKs are parallel to the BPs, except they do not include parallel and element scatter/gather (the actions of P and G and their transposes).

CEED Benchmarks Repository

The CEED benchmarks repository is available at https://github.com/CEED/benchmarks and contains implementations for the CEED bake-off problems with MFEM and Nek5000 in the directories tests/mfem_bps and tests/nek5000_bps, respectively. See the included README.md files for more details.

VT CEED BP Software Release

Checkout the new CEED BP Software Release by the Virginia Tech CEED team. Its main focus is on GPU performance with kernels written in the OCCA framework.

The related benchmarks suite can be found here: https://github.com/paranumal/benchparanumal

Bake-off Problems Description

Bake-off Problems. We define our first four bake-off problems, denoted as BP1, BP2, BP3, and BP4.

Bake-off Problem Details. The following items describe the details common to all BPs:

Required output:

Terminology and Notation

Vector representation/storage categories:

Operator representation/storage/action categories:

Notes and Remarks