Convection

Published configurations

Measures H1 directional-gradient preparation and local contraction.

Measured operation

Mathematical foundation

The measured form is \(a_b(u,v)=\int_K(Ju)b\cdot\overline v\,dx\). Fields are real or complex; complex fields admit either real or genuinely complex directions. Real fields use real directions, as required by the current shape-Dot range constraint. An independent expression-entry quadrature loop and a deliberate perturbation qualify every matrix before timing. The final matrix must repeat exactly. A defective baseline is not timed for the unsupported coefficient semantics.

Architecture

Binding includes owned mapped quadrature, scalar tabulation lookup, physical gradients and local contraction. Traversal, insertion and solving are absent. Warm scopes reuse one order; Refresh alternates two orders on the same owner. Degree, components, quadrature samples and both physical dimensions are reported separately. This component executable is opt-in and outside CTest.

Recorded results

Each case retains its original inputs, iteration policy and correctness checks. Raw reports preserve counters, repetitions and the Google Benchmark context. CPU, wall and manually supplied times are labeled separately; unlike operations and configurations are not averaged together.

Timing history

RodinH1ConvectionBenchmarks · auto · regular · ranks: 1

No timing history has been published for this component.

Benchmark machine and measurement conditions

Published CI benchmarks run on standard GitHub-hosted ubuntu-24.04 virtual machines for public repositories.

SystemCPUMemorySSD
Ubuntu 24.04, x644 vCPUs16 GB14 GB

The benchmark builds use GCC 14 and Release mode. Each job runs one benchmark executable at a time. OpenMP, OpenBLAS and MKL use one thread; MPI ranks share the same runner. The selected configuration identifies the build and rank count.

The CPU model and host load can vary between virtual machines, so small timing differences should be checked across repeated runs. GitHub runner specifications describe the available hardware. The source workflow is BenchmarkGroup.yml.