jaxdecomp 0.2.2__tar.gz → 0.2.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/PKG-INFO +3 -3
  2. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/pyproject.toml +3 -3
  3. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/fft.py +10 -1
  4. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.clang-format +0 -0
  5. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.github/workflows/formatting.yml +0 -0
  6. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.github/workflows/github-deploy.yml +0 -0
  7. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.github/workflows/joss-paper-pdf.yml +0 -0
  8. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.github/workflows/tests.yml +0 -0
  9. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.gitignore +0 -0
  10. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.gitmodules +0 -0
  11. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.pre-commit-config.yaml +0 -0
  12. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/.style.yapf +0 -0
  13. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/CHANGELOG.md +0 -0
  14. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/CMakeLists.txt +0 -0
  15. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/CONTRIBUTING.md +0 -0
  16. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/LICENSE +0 -0
  17. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/README.md +0 -0
  18. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/examples/README.md +0 -0
  19. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/examples/lpt_nbody_demo.py +0 -0
  20. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/examples/scatter.py +0 -0
  21. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/examples/submit_rusty.sbatch +0 -0
  22. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/examples/visualizer.ipynb +0 -0
  23. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/joss-paper/assets/benchmark.png +0 -0
  24. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/joss-paper/assets/fft.svg +0 -0
  25. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/joss-paper/assets/halo-exchange.svg +0 -0
  26. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/joss-paper/paper.bib +0 -0
  27. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/joss-paper/paper.md +0 -0
  28. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/scripts/autotune.py +0 -0
  29. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/scripts/test_fft3d.py +0 -0
  30. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/slurms/README.md +0 -0
  31. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/slurms/template.slurm +0 -0
  32. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/fft.cu +0 -0
  33. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/grid_descriptor_mgr.cc +0 -0
  34. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/halo.cu +0 -0
  35. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/checks.h +0 -0
  36. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/fft.h +0 -0
  37. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/grid_descriptor_mgr.h +0 -0
  38. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/halo.h +0 -0
  39. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/helpers.h +0 -0
  40. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/jaxdecomp.h +0 -0
  41. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/logger.hpp +0 -0
  42. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/perfostep.hpp +0 -0
  43. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/include/transpose.h +0 -0
  44. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/jaxdecomp.cc +0 -0
  45. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/csrc/transpose.cu +0 -0
  46. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/__init__.py +0 -0
  47. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/__init__.py +0 -0
  48. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/cudecomp/__init__.py +0 -0
  49. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/cudecomp/fft.py +0 -0
  50. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/cudecomp/halo.py +0 -0
  51. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/cudecomp/transpose.py +0 -0
  52. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/fft_utils.py +0 -0
  53. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/jax/__init__.py +0 -0
  54. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/jax/fft.py +0 -0
  55. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/jax/fftfreq.py +0 -0
  56. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/jax/halo.py +0 -0
  57. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/jax/transpose.py +0 -0
  58. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/pencil_utils.py +0 -0
  59. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/_src/spmd_ops.py +0 -0
  60. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/halo.py +0 -0
  61. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/transpose.py +0 -0
  62. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/src/jaxdecomp/typing.py +0 -0
  63. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/tests/conftest.py +0 -0
  64. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/tests/run_all_tests.sh +0 -0
  65. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/tests/test_fft.py +0 -0
  66. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/tests/test_halo.py +0 -0
  67. {jaxdecomp-0.2.2 → jaxdecomp-0.2.3}/tests/test_transpose.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaxdecomp
3
- Version: 0.2.2
3
+ Version: 0.2.3
4
4
  Summary: JAX bindings for the cuDecomp library
5
5
  Author: Wassim Kabalan, Francois Lanusse
6
6
  License: MIT License
@@ -34,9 +34,9 @@ Classifier: Intended Audience :: Developers
34
34
  Classifier: Intended Audience :: Science/Research
35
35
  Project-URL: Homepage, https://github.com/DifferentiableUniverseInitiative/jaxDecomp
36
36
  Requires-Dist: jaxtyping>=0.2.0
37
- Requires-Dist: jax>=0.4.30
37
+ Requires-Dist: jax>=0.4.35
38
38
  Requires-Dist: pytest>=8.0.0; extra == "test"
39
- Requires-Dist: jax>=0.4.30; extra == "test"
39
+ Requires-Dist: jax>=0.4.35; extra == "test"
40
40
  Provides-Extra: test
41
41
  Description-Content-Type: text/markdown
42
42
 
@@ -3,7 +3,7 @@ requires = ["scikit-build-core>=0.4.0", "pybind11>=2.9.0"]
3
3
  build-backend = "scikit_build_core.build"
4
4
  [project]
5
5
  name = "jaxdecomp"
6
- version = "0.2.2"
6
+ version = "0.2.3"
7
7
  description = "JAX bindings for the cuDecomp library"
8
8
  authors = [
9
9
  { name = "Wassim Kabalan" },
@@ -24,11 +24,11 @@ classifiers = [
24
24
  ]
25
25
  dependencies = [
26
26
  "jaxtyping>=0.2.0",
27
- "jax>=0.4.30",
27
+ "jax>=0.4.35",
28
28
  ]
29
29
 
30
30
  [project.optional-dependencies]
31
- test = ["pytest>=8.0.0" , "jax>=0.4.30"]
31
+ test = ["pytest>=8.0.0" , "jax>=0.4.35"]
32
32
 
33
33
  [tool.scikit-build]
34
34
  minimum-version = "0.8"
@@ -2,7 +2,8 @@ from functools import partial
2
2
  from typing import Optional, Sequence
3
3
 
4
4
  import jax.numpy as jnp
5
- from jax import jit
5
+ from jax import jit, lax
6
+ from jax._src import dtypes
6
7
  from jax._src.typing import Array, ArrayLike
7
8
 
8
9
  from jaxdecomp._src.cudecomp.fft import pfft as _cudecomp_pfft
@@ -115,6 +116,14 @@ def _do_pfft(func_name: str,
115
116
  typ = fft_type
116
117
  else:
117
118
  raise TypeError(f"Unknown FFT type value '{fft_type}'")
119
+
120
+ match typ:
121
+ case FftType.FFT | FftType.IFFT:
122
+ arr = lax.convert_element_type(arr,
123
+ dtypes.to_complex_dtype(dtypes.dtype(arr)))
124
+ case FftType.RFFT | FftType.IRFFT:
125
+ raise ValueError("Not implemented wait (SOON)")
126
+
118
127
  if backend.lower() == "cudecomp":
119
128
  transformed = _cudecomp_pfft(arr, typ)
120
129
  elif backend.lower() == "jax":
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes