Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update sparse computation, add initial version of BlockCSR and BlockELL #81

Merged
merged 1 commit into from
Dec 14, 2024

Conversation

chaoming0625
Copy link
Collaborator

This pull request introduces significant changes to the brainunit/sparse module, including the addition of new sparse matrix formats (BlockCSR and BlockELL), their corresponding benchmarks, and updates to existing imports. The most important changes are outlined below:

New Sparse Matrix Formats:

  • brainunit/sparse/_block_csr.py: Added the BlockCSR class, which represents a unit-aware Block-CSR sparse matrix, along with methods for validation, conversion to dense format, matrix multiplication, and sampling sparse matrices.
  • brainunit/sparse/_block_ell.py: Added the BlockELL class, which represents a unit-aware Block-ELL sparse matrix, along with methods for validation, conversion to dense format, matrix multiplication, and sampling sparse matrices.

Benchmarking:

Import Updates:

  • brainunit/sparse/__init__.py: Updated imports to reflect the new module structure, including the addition of SparseMatrix and changes to import paths for COO and CSR classes.

@chaoming0625 chaoming0625 merged commit f106941 into main Dec 14, 2024
24 checks passed
@chaoming0625 chaoming0625 deleted the update branch December 14, 2024 07:17
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