Blosc / Blosc/python-blosc2

Array-api Linalg functions

Open
#476 1 comment 0 reactions 0 assignees View on GitHub
enhancement help wanted
Dominant language
Python
Stars
211
Forks
58
Avg merge
1d 17h
Merged PRs (30d)
6

Description

It might be nice to add the following functions to blosc2, which are included in the linalg module of the array-api standard. See src/blosc2/linalg.py for function signatures.

- [ ] array_api_tests/test_linalg.py::test_cholesky
- [ ] array_api_tests/test_linalg.py::test_cross
- [ ] array_api_tests/test_linalg.py::test_det
- [ ] array_api_tests/test_linalg.py::test_diagonal
- [ ] array_api_tests/test_linalg.py::test_eigh
- [ ] array_api_tests/test_linalg.py::test_eigvalsh
- [ ] array_api_tests/test_linalg.py::test_inv
- [ ] array_api_tests/test_linalg.py::test_linalg_matmul - add @ operator
- [x] ~array_api_tests/test_linalg.py::test_matmul~
- [ ] array_api_tests/test_linalg.py::test_matrix_norm
- [ ] array_api_tests/test_linalg.py::test_matrix_power
- [ ] array_api_tests/test_linalg.py::test_matrix_rank
- [ ] array_api_tests/test_linalg.py::test_linalg_matrix_transpose
- [x] ~array_api_tests/test_linalg.py::test_matrix_transpose~
- [x] array_api_tests/test_linalg.py::test_outer (but this can be optimised since chunks don't need to be decompressed)
- [ ] array_api_tests/test_linalg.py::test_pinv
- [ ] array_api_tests/test_linalg.py::test_qr
- [ ] array_api_tests/test_linalg.py::test_slogdet
- [ ] array_api_tests/test_linalg.py::test_solve
- [ ] array_api_tests/test_linalg.py::test_svd
- [ ] array_api_tests/test_linalg.py::test_svdvals
- [ ] array_api_tests/test_linalg.py::test_linalg_tensordot
- [x] ~array_api_tests/test_linalg.py::test_tensordot~
- [ ] array_api_tests/test_linalg.py::test_trace
- [ ] array_api_tests/test_linalg.py::test_linalg_vecdot
- [x] ~array_api_tests/test_linalg.py::test_vecdot~
- [ ] array_api_tests/test_linalg.py::test_vecdot_conj
- [ ] array_api_tests/test_linalg.py::test_vector_norm

Contributor guide

Open the contributing guide

Research direction

Start by reading the signatures in src/blosc2/linalg.py and the unchecked cases in array_api_tests/test_linalg.py. Run the relevant linalg tests to establish which functions are currently missing. Done means the listed unchecked tests pass and the checklist accurately reflects the remaining implementations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.