Contraction

Published configurations

Conjugating spatial-matrix contractions and weighted pair batches.

Measured operation

Measures the public Frobenius product used by named elasticity.

Mathematical operation

For retained matrices with logical shape \(r\times c\), the scalar scope evaluates \(\sum_{i,j} A_{ij}\overline{B_{ij}}\). The batch scope evaluates \(K_{ba}=w\sum_{i,j} A^a_{ij}\overline{B^b_{ij}}\) with \(w=3/4\) and \(N^2\) pairs. Output zeroing and weighted accumulation are timed. Setup, exact qualification and perturbation checks are untimed.

Measurement boundary

Original uses const dynamic Eigen blocks, preserving the existing public reduction expression and reading dimensions from the operands. KnownColumns selects three-column views before the batch pair loop; the row extent and total size remain dynamic to retain the original reduction strategy. Other shapes retain the public spatial-matrix dot call. This experimental caller-known shape protocol models a local assembly consumer, not an optimization of the generic spatial-matrix dot API. All scopes retain runtime dimensions and poison inactive storage. Bounded dyadic inputs admit an independent exact sum, including mixed real/complex fields and empty rectangular shapes. No operand symmetry is assumed. Counts 6, 12 and 30 cover representative vector-element pair-loop sizes, not complete finite element kernels. Geometry, coefficient evaluation, Jacobian mapping and sparse insertion are excluded. The named-form benchmark supplies the assembly consumer.

Component protocols retain \(mN\) matrices for \(m=rc\) components and \(N\in\{6,27,64\}\) scalar-basis-count proxies. ComponentSparse stores one active component \(a\bmod m\) per matrix. Its independent oracle uses the component Kronecker delta, rather than reducing the input matrices. ComponentDense retains the same dimensions and pair counts, but fills every active entry. These are arithmetic inputs resembling component bases, not evaluations of a particular element or geometry. Empty shapes remain structural bounds, not physical refinement cases.

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

RodinSpatialMatrixContractionBenchmarks · auto · regular · ranks: 1

No timing history has been published for this component.