From 5e81354e90922aa084d2589e1e8ce9e6fa83ceea Mon Sep 17 00:00:00 2001 From: Yuuichi Asahi Date: Thu, 19 Dec 2024 11:43:04 +0900 Subject: [PATCH] fix: scoped rocfft plan type --- fft/src/KokkosFFT_ROCM_transform.hpp | 29 +++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/fft/src/KokkosFFT_ROCM_transform.hpp b/fft/src/KokkosFFT_ROCM_transform.hpp index 2e891eed..b96e861d 100644 --- a/fft/src/KokkosFFT_ROCM_transform.hpp +++ b/fft/src/KokkosFFT_ROCM_transform.hpp @@ -11,8 +11,8 @@ namespace KokkosFFT { namespace Impl { -void exec_plan(ScopedRocfftPlan& scoped_plan, float* idata, - std::complex* odata, int /*direction*/) { +inline void exec_plan(ScopedRocfftPlan& scoped_plan, float* idata, + std::complex* odata, int /*direction*/) { rocfft_status status = rocfft_execute(scoped_plan.plan(), (void**)&idata, (void**)&odata, scoped_plan.execution_info()); @@ -20,8 +20,8 @@ void exec_plan(ScopedRocfftPlan& scoped_plan, float* idata, "rocfft_execute for R2C failed"); } -void exec_plan(ScopedRocfftPlan& scoped_plan, double* idata, - std::complex* odata, int /*direction*/) { +inline void exec_plan(ScopedRocfftPlan& scoped_plan, double* idata, + std::complex* odata, int /*direction*/) { rocfft_status status = rocfft_execute(scoped_plan.plan(), (void**)&idata, (void**)&odata, scoped_plan.execution_info()); @@ -29,8 +29,9 @@ void exec_plan(ScopedRocfftPlan& scoped_plan, double* idata, "rocfft_execute for D2Z failed"); } -void exec_plan(ScopedRocfftPlan& scoped_plan, std::complex* idata, - float* odata, int /*direction*/) { +inline void exec_plan(ScopedRocfftPlan>& scoped_plan, + std::complex* idata, float* odata, + int /*direction*/) { rocfft_status status = rocfft_execute(scoped_plan.plan(), (void**)&idata, (void**)&odata, scoped_plan.execution_info()); @@ -38,8 +39,9 @@ void exec_plan(ScopedRocfftPlan& scoped_plan, std::complex* idata, "rocfft_execute for C2R failed"); } -void exec_plan(ScopedRocfftPlan& scoped_plan, - std::complex* idata, double* odata, int /*direction*/) { +inline void exec_plan(ScopedRocfftPlan>& scoped_plan, + std::complex* idata, double* odata, + int /*direction*/) { rocfft_status status = rocfft_execute(scoped_plan.plan(), (void**)&idata, (void**)&odata, scoped_plan.execution_info()); @@ -47,8 +49,9 @@ void exec_plan(ScopedRocfftPlan& scoped_plan, "rocfft_execute for Z2D failed"); } -void exec_plan(ScopedRocfftPlan& scoped_plan, std::complex* idata, - std::complex* odata, int /*direction*/) { +inline void exec_plan(ScopedRocfftPlan>& scoped_plan, + std::complex* idata, std::complex* odata, + int /*direction*/) { rocfft_status status = rocfft_execute(scoped_plan.plan(), (void**)&idata, (void**)&odata, scoped_plan.execution_info()); @@ -56,9 +59,9 @@ void exec_plan(ScopedRocfftPlan& scoped_plan, std::complex* idata, "rocfft_execute for C2C failed"); } -void exec_plan(ScopedRocfftPlan& scoped_plan, - std::complex* idata, std::complex* odata, - int /*direction*/) { +inline void exec_plan(ScopedRocfftPlan>& scoped_plan, + std::complex* idata, std::complex* odata, + int /*direction*/) { rocfft_status status = rocfft_execute(scoped_plan.plan(), (void**)&idata, (void**)&odata, scoped_plan.execution_info());