You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* prepare release 1.0.0
* fix: conflicts in README.md
* fix: conflicts in building.rst
* replace OPENMPTARGET with OPENACC, because it has been deleted
* update warnings based on review
* format CHANGELOG.md
* update CHANGELOG.md
* Introduce internal changes section in CHANGELOG.md
* Only keep relevant changes in General Enhancement
* update CHANGELOG.md
* update CHANGELOG.md and experimental warnings
* use upper case for the experimental namespaces
* update dates in CHANGELOG.md
---------
Co-authored-by: Yuuichi Asahi <[email protected]>
- Build system: Add check to ensure complex alignment [\#228](https://github.com/kokkos/kokkos-fft/pull/228)
55
-
- General Enhancement: Set commit SHA instead of version of github actions [\#257](https://github.com/kokkos/kokkos-fft/pull/257)
56
-
- General Enhancement: Unuse KokkosFFT_ENABLE_HOST_AND_DEVICE [\#256](https://github.com/kokkos/kokkos-fft/pull/256)
57
-
- General Enhancement: Improve roll function [\#254](https://github.com/kokkos/kokkos-fft/pull/254)
58
-
- General Enhancement: Refactor roll operation used in fftshift/ifftshift [\#253](https://github.com/kokkos/kokkos-fft/pull/253)
59
-
- General Enhancement: Run fill_random on a given execution space instance [\#250](https://github.com/kokkos/kokkos-fft/pull/250)
60
-
- General Enhancement: Refactor unit-tests [\#241](https://github.com/kokkos/kokkos-fft/pull/241)
61
-
- General Enhancement: Improve example docs [\#236](https://github.com/kokkos/kokkos-fft/pull/236)
62
-
- General Enhancement: Cleanup implementation details [\#235](https://github.com/kokkos/kokkos-fft/pull/235)
63
-
- General Enhancement: Make execute a free function [\#223](https://github.com/kokkos/kokkos-fft/pull/223)
64
-
- General Enhancement: Introduce global setup/cleanup in APIs [\#220](https://github.com/kokkos/kokkos-fft/pull/220)
65
-
- General Enhancement: Remove unnecessary cufftCreate and hipfftCreate to avoid creating plans twice [\#212](https://github.com/kokkos/kokkos-fft/pull/212)
66
-
- General Enhancement: Fix RAII issue by introducing wrapper classes for backend plans [\#208](https://github.com/kokkos/kokkos-fft/pull/208)
67
-
- General Enhancement: Add missing checks [\#196](https://github.com/kokkos/kokkos-fft/pull/196)
> EXPERIMENTAL FFT interfaces for Kokkos C++ Performance Portability Programming EcoSystem
16
-
17
14
Kokkos-FFT implements local interfaces between [Kokkos](https://github.com/kokkos/kokkos) and de facto standard FFT libraries, including [FFTW](http://www.fftw.org), [cufft](https://developer.nvidia.com/cufft), [hipfft](https://github.com/ROCm/hipFFT) ([rocfft](https://github.com/ROCm/rocFFT)), and [oneMKL](https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html). "Local" means not using MPI, or running within a single MPI process without knowing about MPI. We are inclined to implement the [numpy.fft](https://numpy.org/doc/stable/reference/routines.fft.html)-like interfaces adapted for [Kokkos](https://github.com/kokkos/kokkos).
18
15
A key concept is that **"As easy as numpy, as fast as vendor libraries"**. Accordingly, our API follows the API by [numpy.fft](https://numpy.org/doc/stable/reference/routines.fft.html) with minor differences. A fft library dedicated to Kokkos Device backend (e.g. [cufft](https://developer.nvidia.com/cufft) for CUDA backend) is automatically used. If something is wrong with runtime values (say `View` extents), it will raise runtime errors (C++ `std::runtime_error`). See [documentations](https://kokkosfft.readthedocs.io/) for more information.
19
16
@@ -84,6 +81,7 @@ In this example, the 1D batched `rfft` over 2D View along `axis -1` is executed.
84
81
## Using Kokkos-FFT
85
82
86
83
For the moment, there are two ways to use Kokkos-FFT: including as a subdirectory in CMake project or installing as a library. First of all, you need to clone this repo.
@@ -102,6 +100,7 @@ To use Kokkos-FFT, we need the following:
102
100
> A compatible C++ compiler that supports at least C++20 is necessary
103
101
104
102
### CMake
103
+
105
104
Since Kokkos-FFT is a header-only library, it is enough to simply add as a subdirectory. It is assumed that kokkos and Kokkos-FFT are placed under `<project_directory>/tpls`.
106
105
107
106
Here is an example to use Kokkos-FFT in the following CMake project.
Copy file name to clipboardExpand all lines: docs/api_reference.rst
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,9 +9,13 @@ API Reference
9
9
10
10
This section documents the public user interface of ``Kokkos-FFT``.
11
11
APIs are defined in ``KokkosFFT`` namespace and implementation details are defined in ``KokkosFFT::Impl`` namespace.
12
-
Thus, it is highly discouraged for users to access functions in ``KokkosFFT::Impl`` namespace.
12
+
Thus, it is highly discouraged for users to access functions in ``KokkosFFT::Impl`` namespace.
13
13
Except for ``KokkosFFT::Plan``, there are corresponding functions in ``numpy.fft`` as shown below.
14
14
15
+
.. note::
16
+
17
+
For the moment, APIs under ``KokkosFFT::Distributed`` and ``KokkosFFT::Testing`` are considered experimental and may be subject to changes without warnings.
Copy file name to clipboardExpand all lines: docs/developer/CI.rst
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -90,7 +90,7 @@ For Intel GPUs (Intel PVC), you can test locally in the following way.
90
90
cmake --build build -j 8
91
91
cd build && ctest --output-on-failure
92
92
93
-
Here is the summary of our compile and run tests for each backend. For GPU backends, we compile with and without ``KokkosFFT_ENABLE_HOST_AND_DEVICE`` option (see :doc:`CMake options<../intro/building>`).
93
+
Here is the summary of our compile and run tests for each backend. For GPU backends, we compile with and without ``KokkosFFT_ENABLE_FFTW`` option (see :doc:`CMake options<../intro/building>`).
94
94
95
95
.. list-table:: Test summary
96
96
:widths: 15 15 15 15 15 15
@@ -127,7 +127,7 @@ Here is the summary of our compile and run tests for each backend. For GPU backe
0 commit comments