diff --git a/dpnp/backend/extensions/fft/CMakeLists.txt b/dpnp/backend/extensions/fft/CMakeLists.txt index 327c85a96dac..38b8028ad56d 100644 --- a/dpnp/backend/extensions/fft/CMakeLists.txt +++ b/dpnp/backend/extensions/fft/CMakeLists.txt @@ -27,8 +27,6 @@ set(python_module_name _fft_impl) set(_module_src ${CMAKE_CURRENT_SOURCE_DIR}/fft_py.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/in_place.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/out_of_place.cpp ) pybind11_add_module(${python_module_name} MODULE ${_module_src}) diff --git a/dpnp/backend/extensions/fft/in_place.hpp b/dpnp/backend/extensions/fft/in_place.hpp index 4d2198579952..46d397b8ea41 100644 --- a/dpnp/backend/extensions/fft/in_place.hpp +++ b/dpnp/backend/extensions/fft/in_place.hpp @@ -42,3 +42,5 @@ std::pair const std::vector &depends); } // namespace dpnp::extensions::fft + +#include "in_place.tpp" // Include template definition diff --git a/dpnp/backend/extensions/fft/in_place.cpp b/dpnp/backend/extensions/fft/in_place.tpp similarity index 86% rename from dpnp/backend/extensions/fft/in_place.cpp rename to dpnp/backend/extensions/fft/in_place.tpp index 810189f1c807..ffee6e008bf8 100644 --- a/dpnp/backend/extensions/fft/in_place.cpp +++ b/dpnp/backend/extensions/fft/in_place.tpp @@ -23,6 +23,7 @@ // THE POSSIBILITY OF SUCH DAMAGE. //***************************************************************************** +#pragma once #include #include @@ -32,7 +33,6 @@ #include "common.hpp" #include "fft_utils.hpp" -#include "in_place.hpp" // dpctl tensor headers #include "utils/output_validation.hpp" @@ -107,21 +107,4 @@ std::pair return std::make_pair(fft_event, args_ev); } -// Explicit instantiations -// single precision c2c FFT -template std::pair compute_fft_in_place( - DescriptorWrapper - &descr, - const dpctl::tensor::usm_ndarray &in_out, - const bool is_forward, - const std::vector &depends); - -// double precision c2c FFT -template std::pair compute_fft_in_place( - DescriptorWrapper - &descr, - const dpctl::tensor::usm_ndarray &in_out, - const bool is_forward, - const std::vector &depends); - } // namespace dpnp::extensions::fft diff --git a/dpnp/backend/extensions/fft/out_of_place.hpp b/dpnp/backend/extensions/fft/out_of_place.hpp index dbb754b505a3..6fd65b82bd05 100644 --- a/dpnp/backend/extensions/fft/out_of_place.hpp +++ b/dpnp/backend/extensions/fft/out_of_place.hpp @@ -43,3 +43,5 @@ std::pair const std::vector &depends); } // namespace dpnp::extensions::fft + +#include "out_of_place.tpp" // Include template definition diff --git a/dpnp/backend/extensions/fft/out_of_place.cpp b/dpnp/backend/extensions/fft/out_of_place.tpp similarity index 82% rename from dpnp/backend/extensions/fft/out_of_place.cpp rename to dpnp/backend/extensions/fft/out_of_place.tpp index d1de24ba38af..951ff741075c 100644 --- a/dpnp/backend/extensions/fft/out_of_place.cpp +++ b/dpnp/backend/extensions/fft/out_of_place.tpp @@ -23,6 +23,7 @@ // THE POSSIBILITY OF SUCH DAMAGE. //***************************************************************************** +#pragma once #include #include @@ -32,7 +33,6 @@ #include "common.hpp" #include "fft_utils.hpp" -#include "out_of_place.hpp" // dpctl tensor headers #include "utils/memory_overlap.hpp" #include "utils/output_validation.hpp" @@ -167,38 +167,4 @@ std::pair return std::make_pair(fft_event, args_ev); } -// Explicit instantiations -// single precision c2c FFT -template std::pair compute_fft_out_of_place( - DescriptorWrapper - &descr, - const dpctl::tensor::usm_ndarray &in, - const dpctl::tensor::usm_ndarray &out, - const bool is_forward, - const std::vector &depends); - -// double precision c2c FFT -template std::pair compute_fft_out_of_place( - DescriptorWrapper - &descr, - const dpctl::tensor::usm_ndarray &in, - const dpctl::tensor::usm_ndarray &out, - const bool is_forward, - const std::vector &depends); - -// single precision r2c/c2r FFT -template std::pair compute_fft_out_of_place( - DescriptorWrapper &descr, - const dpctl::tensor::usm_ndarray &in, - const dpctl::tensor::usm_ndarray &out, - const bool is_forward, - const std::vector &depends); - -// double precision r2c/c2r FFT -template std::pair compute_fft_out_of_place( - DescriptorWrapper &descr, - const dpctl::tensor::usm_ndarray &in, - const dpctl::tensor::usm_ndarray &out, - const bool is_forward, - const std::vector &depends); } // namespace dpnp::extensions::fft