Scalable SVD, GSoC`22 contributions, Docker image, PyTorch 2 support, AMD GPUs acceleration
github-actions
released this
20 Jun 14:49
·
31 commits
to release/1.3.x
since this release
This release includes many important updates (see below). We particularly would like to thank our enthusiastic GSoC2022 / tentative GSoC2023 contributors @Mystic-Slice @neosunhan @Sai-Suraj-27 @shahpratham @AsRaNi1 @Ishaan-Chandak 🙏🏼 Thank you so much!
Highlights
- #1155 Support PyTorch 2.0.1 (by @ClaudiaComito)
- #1152 Support AMD GPUs (by @mtar)
- #1126 Distributed hierarchical SVD (by @mrfh92)
- #1028 Introducing the
sparse
module: Distributed Compressed Sparse Row Matrix (by @Mystic-Slice) - Performance improvements:
- #1125 distributed
heat.reshape()
speed-up (by @ClaudiaComito) - #1141
heat.pow()
speed-up when exponent isint
(by @ClaudiaComito @coquelin77 ) - #1119
heat.array()
default tocopy=None
(e.g., only if necessary) (by @ClaudiaComito @neosunhan )
- #1125 distributed
- #970 Dockerfile and accompanying documentation (by @bhagemeier)
Changelog
Array-API compliance / Interoperability
- #1154 Introduce
DNDarray.__array__()
method for interoperability withnumpy
,xarray
(by @ClaudiaComito) - #1147 Adopt NEP29, drop support for PyTorch 1.7, Python 3.6 (by @mtar)
- #1119
ht.array()
default tocopy=None
(e.g., only if necessary) (by @ClaudiaComito) - #1020 Implement
broadcast_arrays
,broadcast_to
(by @neosunhan) - #1008 API: Rename
keepdim
kwarg tokeepdims
(by @neosunhan) - #788 Interface for DPPY interoperability (by @coquelin77 @fschlimb )
New Features
- #1126 Distributed hierarchical SVD (by @mrfh92)
- #1020 Implement
broadcast_arrays
,broadcast_to
(by @neosunhan) - #983 Signal processing: fully distributed 1D convolution (by @shahpratham)
- #1063 add eq to Device (by @mtar)
Bug Fixes
- #1141
heat.pow()
speed-up when exponent isint
(by @ClaudiaComito) - #1136 Fixed PyTorch version check in
sparse
module (by @Mystic-Slice) - #1098 Validates number of dimensions in input to
ht.sparse.sparse_csr_matrix
(by @Ishaan-Chandak) - #1095 Convolve with distributed kernel on multiple GPUs (by @shahpratham)
- #1094 Fix division precision error in
random
module (by @Mystic-Slice) - #1075 Fixed initialization of DNDarrays communicator in some routines (by @AsRaNi1)
- #1066 Verify input object type and layout + Supporting tests (by @Mystic-Slice)
- #1037 Distributed weighted
average()
along tuple of axes: shape ofweights
to match shape of input (by @Mystic-Slice)
Benchmarking
- #1137 Continous Benchmarking of runtime (by @JuanPedroGHM)
Documentation
- #1150 Refactoring for efficiency and readability (by @Sai-Suraj-27)
- #1130 Reintroduce Quick Start (by @ClaudiaComito)
- #1079 A better README file (by @Sai-Suraj-27)
Linear Algebra
Contributors
@AsRaNi1, @ClaudiaComito, @Ishaan-Chandak, @JuanPedroGHM, @Mystic-Slice, @Sai-Suraj-27, @bhagemeier, @coquelin77, @mrfh92, @mtar, @neosunhan, @shahpratham