Skip to content

Kronecker mask#1

Open
ilyamaltsev05 wants to merge 1 commit intoSparseLinearAlgebra:stablefrom
ilyamaltsev05:kronecker-mask
Open

Kronecker mask#1
ilyamaltsev05 wants to merge 1 commit intoSparseLinearAlgebra:stablefrom
ilyamaltsev05:kronecker-mask

Conversation

@ilyamaltsev05
Copy link

@ilyamaltsev05 ilyamaltsev05 commented Feb 28, 2026

Implementation of non-complemented mask support in Kronecker product, moved it to GB_kron since transposed A and B input matrices are not needed and bitmap A and B are okay.

MT is built as sparse matrix in same CSR/CSC format as mask matrix M. First iteration over mask counts number of values in each vector of MT, then pointers array MTp is passed to GB_cumsum to get prefix sum in MTp. Second iteration over mask is needed to initialize MTi array of coordinates and actual values in MTx. Later MT is transposed and converted to hypersparse if necessary and passed to GB_accum_mask to transplant its result into C.

Two tests (test226 and test227) are modified to check implementation and pass (with malloc debugging turned off as in testall)

@ilyamaltsev05 ilyamaltsev05 force-pushed the kronecker-mask branch 6 times, most recently from 08df88f to 28eacc7 Compare March 6, 2026 03:40
@gsvgit gsvgit requested a review from vkutuev March 6, 2026 05:56
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