Skip to content

Solve on views in colstimespivotinv and pivotinvtimesrows - #77

Open
NepomukRitz wants to merge 1 commit into
mainfrom
reduce-allocations
Open

NepomukRitz wants to merge 1 commit into
mainfrom
reduce-allocations

Conversation

@NepomukRitz

Copy link
Copy Markdown

colstimespivotinv and pivotinvtimesrows sliced L and U into copies before the triangular solve. Views reach the same solve (BLAS trsm for /, LAPACK trtrs for \) on the same values, and only the copy is gone.

Outputs are bit-identical on seeded AlternatingCrossInterpolation products, and both solves agree bit for bit on views and copies (Float64 and ComplexF64, several sizes, 1 and 8 BLAS threads, bundled OpenBLAS). The test suite passes.

Found by an allocation profile of ACI products in ReFrequenTT.

🤖 Generated with Claude Code

colstimespivotinv and pivotinvtimesrows copied the slices of L and U they pass to the
triangular solve. Views reach the same triangular solve (BLAS trsm, LAPACK trtrs) on the
same values, and only the copy is gone. Outputs unchanged bit for bit on a harness of
seeded ACI products, and both solves give bit-identical results on views and on copies
(Float64 and ComplexF64, several sizes, 1 and 8 BLAS threads).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
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