1. 27 Aug, 2024 3 commits
  2. 22 Aug, 2024 1 commit
    • Boris Bonev's avatar
      Bbonev/disco fused quadrature (#42) · 77a64b2c
      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
      77a64b2c
  3. 21 Aug, 2024 1 commit
  4. 20 Aug, 2024 1 commit
  5. 19 Aug, 2024 10 commits
    • Boris Bonev's avatar
      more explicit · 3a3480b8
      Boris Bonev authored
      3a3480b8
    • Boris Bonev's avatar
      making python3 explicit in workflow · b2b1b683
      Boris Bonev authored
      b2b1b683
    • Boris Bonev's avatar
      changing deploy workflow · 8f054dcb
      Boris Bonev authored
      8f054dcb
    • Boris Bonev's avatar
      debugging workflow run · 74d2a27f
      Boris Bonev authored
      74d2a27f
    • Boris Bonev's avatar
      making pypi workflow dispatchable · abf2beda
      Boris Bonev authored
      abf2beda
    • Boris Bonev's avatar
      trying different python version · ab1285ae
      Boris Bonev authored
      ab1285ae
    • Boris Bonev's avatar
      making sure python3 is used · 20563f6e
      Boris Bonev authored
      20563f6e
    • Boris Bonev's avatar
      updating the pip install argument · 0f408ee7
      Boris Bonev authored
      0f408ee7
    • Boris Bonev's avatar
      updating github workflow · 1121877d
      Boris Bonev authored
      1121877d
    • Boris Bonev's avatar
      Tkurth/cuda disco (#38) · 29e7fb68
      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: default avatarThorsten Kurth <tkurth@nvidia.com>
      Co-authored-by: default avatarBoris Bonev <bbonev@nvidia.com>
      29e7fb68
  6. 05 Feb, 2024 1 commit
    • Thorsten Kurth's avatar
      Tkurth/distributed disco (#30) · 214fa40a
      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: default avatarBoris Bonev <bbonev@nvidia.com>
      214fa40a
  7. 30 Jan, 2024 1 commit
  8. 22 Dec, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/disco refactor (#28) · c971d458
      Boris Bonev authored
      Changed the code to only implicitly use sparse tensors in the modules, in order to enable compatibility with DDP
      c971d458
  9. 20 Dec, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/disco refactor (#27) · 942aa4ea
      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
      942aa4ea
  10. 15 Dec, 2023 1 commit
  11. 14 Dec, 2023 2 commits
    • Boris Bonev's avatar
      Bbonev/coverage report (#26) · 9577cc8f
      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
      9577cc8f
    • Boris Bonev's avatar
      Bbonev/discrete continuous convolutions (#25) · a0227d4c
      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: default avatarThorsten Kurth <tkurth@nvidia.com>
      a0227d4c
  12. 07 Dec, 2023 2 commits
    • Boris Bonev's avatar
      Bbonev/discrete continuous convolutions (#24) · ad927429
      Boris Bonev authored
      
      
      * fixing banding issues with corrected computation of kernel size
      * fixing Parameters
      * changed normalization of isotropic kernels
      
      ---------
      Co-authored-by: default avatarThorsten Kurth <tkurth@nvidia.com>
      ad927429
    • Thorsten Kurth's avatar
      Tkurth/flexible sharding (#22) · eab72f04
      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
      eab72f04
  13. 05 Dec, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/discrete continuous convolutions (#23) · 31a33579
      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: default avatarThorsten Kurth <tkurth@nvidia.com>
      31a33579
  14. 02 Dec, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/discrete continuous convolutions (#21) · acbbf8f7
      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: default avatarThorsten Kurth <tkurth@nvidia.com>
      acbbf8f7
  15. 23 Nov, 2023 1 commit
  16. 20 Nov, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/gradient analysis sfno (#19) · 18c5a692
      Boris Bonev authored
      * Adding notebooks for gradient analysis
      
      * Updated the Readme
      
      * Refactored training script for sfno
      
      * removing concatanated skip connections
      
      * Added some logic for initializing weights adaptively
      
      * Cleanup and fixing initialization in SFNO. Removing non-linear variant of SFNO
      
      * Updated initialization scheme for SFNO
      
      * Some more cleanup in SFNO
      
      * updated the SFNO architecture
      18c5a692
  17. 13 Nov, 2023 1 commit
  18. 24 Oct, 2023 4 commits
  19. 23 Oct, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/readability improvements (#13) · acd53a97
      Boris Bonev authored
      * Updated Changelog
      
      * improved readability of legendre.py
      
      * bugfix in computation of dlegpoly
      
      * Moving conversion from numpy to torch from the legendre module to the sht module
      
      * renaming to vdm in tests.py
      acd53a97
  20. 18 Oct, 2023 1 commit
  21. 08 Oct, 2023 1 commit
  22. 04 Oct, 2023 1 commit
  23. 06 Sep, 2023 1 commit
    • Boris Bonev's avatar
      Bbonev/gradcheck (#9) · cec07d7a
      Boris Bonev authored
      * Added gradient check to test suite
      * reduced size of the unit test
      * switched to parametrized for unittests
      cec07d7a
  24. 28 Aug, 2023 1 commit