- 17 Dec, 2024 1 commit
-
-
Boris Bonev authored
-
- 13 Dec, 2024 1 commit
-
-
Thorsten Kurth authored
This small fix removes the maximum version number requirement of torch harmonics
-
- 12 Dec, 2024 1 commit
-
-
Boris Bonev authored
-
- 01 Oct, 2024 1 commit
-
-
Boris Bonev authored
* safeguarding all custom CUDA and C++ routines via the _cuda_extension_available flag * bumping up version number
-
- 20 Sep, 2024 1 commit
-
-
Boris Bonev authored
* added analytic gradients to the gradient_analysis notebook * fixing sht unittest to not check the roundtrip gradient but sht and isht individually * Updated changelog
-
- 09 Sep, 2024 1 commit
-
-
Boris Bonev authored
* changing distributeds SHT to use dim=-3 as the channel dimension for distributed transpose * Fixed formatting in tests * Adding bash script for running test suite * Replaced asserts regarding number of dimensions in tensor with checks
-
- 29 Aug, 2024 3 commits
-
-
Boris Bonev authored
-
Thorsten Kurth authored
-
Boris Bonev authored
* Adding spherical upsampling routine and example notebook for resampling
-
- 28 Aug, 2024 1 commit
-
-
Thorsten Kurth authored
- doing manual type conversion in custom autograd - fixing stride issues in backward pass by making some output tensors contiguous
-
- 27 Aug, 2024 5 commits
-
-
Boris Bonev authored
* AMP hotfix * Bumping up version to 0.7.1
-
Boris Bonev authored
* reworked the setup system to use pyproject.toml * changed the way custom CUDA extension build flag is passed * reworked the CI * changed to source distribution only in the CI
-
Boris Bonev authored
* reverting deploy script * moving setuptools install * removing requirements * bumping up version * bumping up the torch-harmonics version to 0.7.0
-
Thorsten Kurth authored
-
Thorsten Kurth authored
* updating amp to new torch.amp * using amp autocrats to FP32 for disco convolution kernels * implemented reduce_scatter routines but disabled those because of memory fluctuations which can cause OOM on big networks
-
- 22 Aug, 2024 1 commit
-
-
Boris Bonev authored
* missed one instance of python3 * fused multiplication of quadrature into multiplication of the Psi tensor * Added quadrature change to changelog * removing persistent quad weights tensor as it isn't needed anymore * added pretty-prenting for convolution modules * adjusting default value in convolution test
-
- 21 Aug, 2024 1 commit
-
-
Thorsten Kurth authored
* removing unneccessary contiguous statements * replacing reduce scatter with independent reduce and scatter
-
- 20 Aug, 2024 1 commit
-
-
Thorsten Kurth authored
-
- 19 Aug, 2024 10 commits
-
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
-
Boris Bonev authored
* adding cuda kernels for disco conv * making psi_idx an attribute * adding license headers * adding author files * reorganizing files * draft implementation * added conditional installation to setup.py * formatting changes * removing triton kernel in DISCO convolution * updated github actions * updated Readme and changelog * adding another guard for the cuda installation * renaming the cuda extension * simplifying setup.py * minor bugfix * Bbonev/cuda disco cleanup (#32) * cleanup of disco convolutions based on CUDA extension * fixing unittest * changing version to experimental 0.7.0a * initial rewrite of the distributed convolution with CUDA * fixing streams * need to fix install options * fixing streams * undid setup.py changes * reset setup.py * including CUDAStream * adjusted the precomputation of theta_cutoff. If you rely on this, your models will not be backwards-compatible. * adjusting theta_cutoff in the unittest * adding newly refactored kernels for faster compile * Tkurth/cuda disco distributed fix (#34) * attempt to make disco distributed * working distributed convolutions * fixing distributed conv * working distributed disco * removing irrelevant extra argument * using stream functions from at instead of c10 * using stream functions from at instead of c10, small fix * Bbonev/disc even filters (#35) * initial working commit with new convention of counting collocation points across the diameter instead of across the radius * fixed a bug in the computation of the even kernels * changing heuristic for computing theta_cutoff * Fixing unittest * Readability improvements * reworked normalization of filter basis functions * implemented discrete normalization of disco filters * relaxing tolerances in convolution unit test * bugfix to correctly support unequal scale factors in latitudes and longitudes * hotfix to a bug in the imports * Bbonev/distributed disco refactor (#37) * cleaned up normalization code in convolution * formatting changes in distributed convolution * Fixing default theta_cutoff to be the same in distributed and local case * fixed distributed convolution to support the same normalization as non-distributed one * readability improvements * fixed initial scale of convolution parameter weights and fixed naming of the normalization routine * Updated Readme.md * added comment in Dockerfile regarding older architectures --------- Co-authored-by:
Thorsten Kurth <tkurth@nvidia.com> Co-authored-by:
Boris Bonev <bbonev@nvidia.com>
-
- 05 Feb, 2024 1 commit
-
-
Thorsten Kurth authored
* initial implementation of distributed DISCO layer * working distributed convolution * working refactored serial conv transpose with torch kernel * working distributed conv and transposed conv when using the python kernel * working distributed convolution with torch kernel * fixed triton kernel tests * adding print statement to debug CI * adjusting tolerances in local convolution unittest --------- Co-authored-by:Boris Bonev <bbonev@nvidia.com>
-
- 30 Jan, 2024 1 commit
-
-
Boris Bonev authored
* Cleaned up DISCO convolutions
-
- 22 Dec, 2023 1 commit
-
-
Boris Bonev authored
Changed the code to only implicitly use sparse tensors in the modules, in order to enable compatibility with DDP
-
- 20 Dec, 2023 1 commit
-
-
Boris Bonev authored
* Moved convolutions and exposed them directly * Added transposition to the unit test * Minor bugfix in CPU version of DISCO transpose code * Adding convolution tests to CI * Added gradient check * Checking the weight grad as well * Added test for anisotropic kernels
-
- 15 Dec, 2023 1 commit
-
-
Boris Bonev authored
-
- 14 Dec, 2023 2 commits
-
-
Boris Bonev authored
* adding github action for coverage report * removing github action * report coverage in terminal * restricting to files directly inside torch-harmonics * adding exclusion list for coverage * instricting pytest-cov to use coragerc * instricting pytest-cov to use coragerc * changing exclusion list in coveragerc
-
Boris Bonev authored
* Fixing the precomputation of the Psi matrix * moving tests to a parent folder * removing tqdm * deleting deprecated distributed tests * Moving distributed test * adapting workfolow * Added some more comments to make the code more understandable * more detailed explanation for the derivation of the rotation angles * added another comment --------- Co-authored-by:Thorsten Kurth <tkurth@nvidia.com>
-
- 07 Dec, 2023 2 commits
-
-
Boris Bonev authored
* fixing banding issues with corrected computation of kernel size * fixing Parameters * changed normalization of isotropic kernels --------- Co-authored-by:Thorsten Kurth <tkurth@nvidia.com>
-
Thorsten Kurth authored
* working distributed fwd SHT with flexible sharding and without padding * fixing distributed sht with new logic * fixed distributed SHT and ISHT with flexible padding * working unittest for distributed fwd SHT * distributed tests converted to unit tests * bumping version number up to 0.6.4 * fixing small splitting bug in th distributed * updated changeloc, removed tests folder
-
- 05 Dec, 2023 1 commit
-
-
Boris Bonev authored
* Adding prototype implementation of disco convolutions * adding s2convolutions.py * Somewhat functional first implementation in Triton * Somewhat functional first implementation in Triton * Made batched execution work on GPU and refactored precomputation of kernel values and supports. * Adding the Lobatto grid to the grid selection method in quadrature * fixing bug in triton kernel when iterating over non-zeros * Updating with working custom triton implementation of DISCO convolution * Merged both forward and backward DISCO contraction into a single kernel * Some cleanup and minor bugfix * bugfixes to the reference implementation * adding weights to s2conv * removing unnecessary imports * suggestion for torch harmonics, math should be checked thoroughly * Intermediate working reference implementation for the transpose DISCO convolution. Fixed normalization of kernels * adjusting cutoff frequency in disco convolution * fixing transpose DISCO contraction * moving triton to install_requires * enabling triton by default --------- Co-authored-by:Thorsten Kurth <tkurth@nvidia.com>
-
- 02 Dec, 2023 1 commit
-
-
Boris Bonev authored
* Adding prototype implementation of disco convolutions * adding s2convolutions.py * Somewhat functional first implementation in Triton * Somewhat functional first implementation in Triton * Made batched execution work on GPU and refactored precomputation of kernel values and supports. * Adding the Lobatto grid to the grid selection method in quadrature * fixing bug in triton kernel when iterating over non-zeros * Updating with working custom triton implementation of DISCO convolution * Merged both forward and backward DISCO contraction into a single kernel * Some cleanup and minor bugfix * bugfixes to the reference implementation * adding weights to s2conv * removing unnecessary imports * suggestion for torch harmonics, math should be checked thoroughly * Intermediate working reference implementation for the transpose DISCO convolution. Fixed normalization of kernels * adjusting cutoff frequency in disco convolution * fixing transpose DISCO contraction * moving triton to install_requires --------- Co-authored-by:Thorsten Kurth <tkurth@nvidia.com>
-
- 23 Nov, 2023 1 commit
-
-
Thorsten Kurth authored
* Update README.md adding autocast remark to readme * Update README.md small typo fix
-