Skip to content

Optimize BN254 small-prime pointwise products - #183

Merged
odraccir1 merged 1 commit into
masterfrom
ra/pointwise_products
Oct 22, 2026
Merged

odraccir1 merged 1 commit into
masterfrom
ra/pointwise_products

Conversation

@odraccir1

@odraccir1 odraccir1 commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Accelerates BN254 Fp12 pointwise multiplication, squaring, and sums of products in the small-prime FFT backend.

• Process eight coefficients per vector on AVX-512 targets, with AVX2 and scalar tails.
• Defer reductions within proven exactness bounds and fuse nonresidue additions.
• Reuse paired FMA kernels, inline quadratic products, and shorten temporary lifetimes.
• Extend coverage for vector tails, boundary residues, cancellation, aliasing, and rounding modes.

On one AMD EPYC 9454 core with GCC 15.2, the 32,768-point benchmark shows:

Operation: Saved pre-change baseline Optimized Speedup
Multiply: 29.159 ms, 16.209 ms, 1.80×
Square: 15.181 ms, 8.532 ms, 1.78×
Sum of two products: 60.712 ms, 30.713 ms, 1.98×

These are medians of seven trials across eleven auxiliary primes. The baseline and candidate were measured in separate runs with matching inputs, CPU, compiler, and flags. Timings cover the isolated pointwise kernels.

@odraccir1
odraccir1 requested a review from spaceships October 22, 2026 19:22
@odraccir1
odraccir1 merged commit 946f2fc into master Oct 22, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant