Skip to content

Commit

Permalink
suppress unused arguments
Browse files Browse the repository at this point in the history
  • Loading branch information
Yuuichi Asahi committed Jul 4, 2024
1 parent badfefb commit 58e147a
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 44 deletions.
17 changes: 6 additions & 11 deletions fft/src/KokkosFFT_Cuda_transform.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,52 +11,47 @@ namespace KokkosFFT {
namespace Impl {
template <typename... Args>
inline void _exec(cufftHandle& plan, cufftReal* idata, cufftComplex* odata,
[[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
cufftResult cufft_rt = cufftExecR2C(plan, idata, odata);
if (cufft_rt != CUFFT_SUCCESS)
throw std::runtime_error("cufftExecR2C failed");
}

template <typename... Args>
inline void _exec(cufftHandle& plan, cufftDoubleReal* idata,
cufftDoubleComplex* odata, [[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
cufftDoubleComplex* odata, int /*direction*/, Args...) {
cufftResult cufft_rt = cufftExecD2Z(plan, idata, odata);
if (cufft_rt != CUFFT_SUCCESS)
throw std::runtime_error("cufftExecD2Z failed");
}

template <typename... Args>
inline void _exec(cufftHandle& plan, cufftComplex* idata, cufftReal* odata,
[[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
cufftResult cufft_rt = cufftExecC2R(plan, idata, odata);
if (cufft_rt != CUFFT_SUCCESS)
throw std::runtime_error("cufftExecC2R failed");
}

template <typename... Args>
inline void _exec(cufftHandle& plan, cufftDoubleComplex* idata,
cufftDoubleReal* odata, [[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
cufftDoubleReal* odata, int /*direction*/, Args...) {
cufftResult cufft_rt = cufftExecZ2D(plan, idata, odata);
if (cufft_rt != CUFFT_SUCCESS)
throw std::runtime_error("cufftExecZ2D failed");
}

template <typename... Args>
inline void _exec(cufftHandle& plan, cufftComplex* idata, cufftComplex* odata,
int direction, [[maybe_unused]] Args... args) {
int direction, Args...) {
cufftResult cufft_rt = cufftExecC2C(plan, idata, odata, direction);
if (cufft_rt != CUFFT_SUCCESS)
throw std::runtime_error("cufftExecC2C failed");
}

template <typename... Args>
inline void _exec(cufftHandle& plan, cufftDoubleComplex* idata,
cufftDoubleComplex* odata, int direction,
[[maybe_unused]] Args... args) {
cufftDoubleComplex* odata, int direction, Args...) {
cufftResult cufft_rt = cufftExecZ2Z(plan, idata, odata, direction);
if (cufft_rt != CUFFT_SUCCESS)
throw std::runtime_error("cufftExecZ2Z failed");
Expand Down
18 changes: 6 additions & 12 deletions fft/src/KokkosFFT_HIP_transform.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,53 +11,47 @@ namespace KokkosFFT {
namespace Impl {
template <typename... Args>
inline void _exec(hipfftHandle& plan, hipfftReal* idata, hipfftComplex* odata,
[[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
hipfftResult hipfft_rt = hipfftExecR2C(plan, idata, odata);
if (hipfft_rt != HIPFFT_SUCCESS)
throw std::runtime_error("hipfftExecR2C failed");
}

template <typename... Args>
inline void _exec(hipfftHandle& plan, hipfftDoubleReal* idata,
hipfftDoubleComplex* odata, [[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
hipfftDoubleComplex* odata, int /*direction*/, Args...) {
hipfftResult hipfft_rt = hipfftExecD2Z(plan, idata, odata);
if (hipfft_rt != HIPFFT_SUCCESS)
throw std::runtime_error("hipfftExecD2Z failed");
}

template <typename... Args>
inline void _exec(hipfftHandle& plan, hipfftComplex* idata, hipfftReal* odata,
[[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
hipfftResult hipfft_rt = hipfftExecC2R(plan, idata, odata);
if (hipfft_rt != HIPFFT_SUCCESS)
throw std::runtime_error("hipfftExecC2R failed");
}

template <typename... Args>
inline void _exec(hipfftHandle& plan, hipfftDoubleComplex* idata,
hipfftDoubleReal* odata, [[maybe_unused]] int direction,
[[maybe_unused]] Args... args) {
hipfftDoubleReal* odata, int /*direction*/, Args...) {
hipfftResult hipfft_rt = hipfftExecZ2D(plan, idata, odata);
if (hipfft_rt != HIPFFT_SUCCESS)
throw std::runtime_error("hipfftExecZ2D failed");
}

template <typename... Args>
inline void _exec(hipfftHandle& plan, hipfftComplex* idata,
hipfftComplex* odata, int direction,
[[maybe_unused]] Args... args) {
hipfftComplex* odata, int direction, Args...) {
hipfftResult hipfft_rt = hipfftExecC2C(plan, idata, odata, direction);
if (hipfft_rt != HIPFFT_SUCCESS)
throw std::runtime_error("hipfftExecC2C failed");
}

template <typename... Args>
inline void _exec(hipfftHandle& plan, hipfftDoubleComplex* idata,
hipfftDoubleComplex* odata, int direction,
[[maybe_unused]] Args... args) {
hipfftDoubleComplex* odata, int direction, Args...) {
hipfftResult hipfft_rt = hipfftExecZ2Z(plan, idata, odata, direction);
if (hipfft_rt != HIPFFT_SUCCESS)
throw std::runtime_error("hipfftExecZ2Z failed");
Expand Down
12 changes: 6 additions & 6 deletions fft/src/KokkosFFT_OpenMP_transform.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,37 +11,37 @@ namespace KokkosFFT {
namespace Impl {
template <typename PlanType, typename... Args>
void _exec(PlanType& plan, float* idata, fftwf_complex* odata,
[[maybe_unused]] int direction, [[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
fftwf_execute_dft_r2c(plan, idata, odata);
}

template <typename PlanType, typename... Args>
void _exec(PlanType& plan, double* idata, fftw_complex* odata,
[[maybe_unused]] int direction, [[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
fftw_execute_dft_r2c(plan, idata, odata);
}

template <typename PlanType, typename... Args>
void _exec(PlanType& plan, fftwf_complex* idata, float* odata,
[[maybe_unused]] int direction, [[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
fftwf_execute_dft_c2r(plan, idata, odata);
}

template <typename PlanType, typename... Args>
void _exec(PlanType& plan, fftw_complex* idata, double* odata,
[[maybe_unused]] int direction, [[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
fftw_execute_dft_c2r(plan, idata, odata);
}

template <typename PlanType, typename... Args>
void _exec(PlanType& plan, fftwf_complex* idata, fftwf_complex* odata,
[[maybe_unused]] int direction, [[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
fftwf_execute_dft(plan, idata, odata);
}

template <typename PlanType, typename... Args>
void _exec(PlanType plan, fftw_complex* idata, fftw_complex* odata,
[[maybe_unused]] int direction, [[maybe_unused]] Args... args) {
int /*direction*/, Args...) {
fftw_execute_dft(plan, idata, odata);
}
} // namespace Impl
Expand Down
12 changes: 6 additions & 6 deletions fft/src/KokkosFFT_ROCM_transform.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
namespace KokkosFFT {
namespace Impl {
inline void _exec(rocfft_plan& plan, float* idata, std::complex<float>* odata,
[[maybe_unused]] int direction,
int /*direction*/,
const rocfft_execution_info& execution_info) {
rocfft_status status =
rocfft_execute(plan, (void**)&idata, (void**)&odata, execution_info);
Expand All @@ -20,7 +20,7 @@ inline void _exec(rocfft_plan& plan, float* idata, std::complex<float>* odata,
}

inline void _exec(rocfft_plan& plan, double* idata, std::complex<double>* odata,
[[maybe_unused]] int direction,
int /*direction*/,
const rocfft_execution_info& execution_info) {
rocfft_status status =
rocfft_execute(plan, (void**)&idata, (void**)&odata, execution_info);
Expand All @@ -29,7 +29,7 @@ inline void _exec(rocfft_plan& plan, double* idata, std::complex<double>* odata,
}

inline void _exec(rocfft_plan& plan, std::complex<float>* idata, float* odata,
[[maybe_unused]] int direction,
int /*direction*/,
const rocfft_execution_info& execution_info) {
rocfft_status status =
rocfft_execute(plan, (void**)&idata, (void**)&odata, execution_info);
Expand All @@ -38,7 +38,7 @@ inline void _exec(rocfft_plan& plan, std::complex<float>* idata, float* odata,
}

inline void _exec(rocfft_plan& plan, std::complex<double>* idata, double* odata,
[[maybe_unused]] int direction,
int /*direction*/,
const rocfft_execution_info& execution_info) {
rocfft_status status =
rocfft_execute(plan, (void**)&idata, (void**)&odata, execution_info);
Expand All @@ -47,7 +47,7 @@ inline void _exec(rocfft_plan& plan, std::complex<double>* idata, double* odata,
}

inline void _exec(rocfft_plan& plan, std::complex<float>* idata,
std::complex<float>* odata, [[maybe_unused]] int direction,
std::complex<float>* odata, int /*direction*/,
const rocfft_execution_info& execution_info) {
rocfft_status status =
rocfft_execute(plan, (void**)&idata, (void**)&odata, execution_info);
Expand All @@ -56,7 +56,7 @@ inline void _exec(rocfft_plan& plan, std::complex<float>* idata,
}

inline void _exec(rocfft_plan& plan, std::complex<double>* idata,
std::complex<double>* odata, [[maybe_unused]] int direction,
std::complex<double>* odata, int /*direction*/,
const rocfft_execution_info& execution_info) {
rocfft_status status =
rocfft_execute(plan, (void**)&idata, (void**)&odata, execution_info);
Expand Down
15 changes: 6 additions & 9 deletions fft/src/KokkosFFT_SYCL_plans.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,6 @@ auto _create(const ExecutionSpace& exec_space, std::unique_ptr<PlanType>& plan,
static_assert(
InViewType::rank() >= fft_rank,
"KokkosFFT::_create: Rank of View must be larger than Rank of FFT.");
const int rank = fft_rank;

constexpr auto type =
KokkosFFT::Impl::transform_type<ExecutionSpace, in_value_type,
Expand All @@ -78,11 +77,6 @@ auto _create(const ExecutionSpace& exec_space, std::unique_ptr<PlanType>& plan,
int fft_size = std::accumulate(fft_extents.begin(), fft_extents.end(), 1,
std::multiplies<>());

auto* idata = reinterpret_cast<typename KokkosFFT::Impl::fft_data_type<
ExecutionSpace, in_value_type>::type*>(in.data());
auto* odata = reinterpret_cast<typename KokkosFFT::Impl::fft_data_type<
ExecutionSpace, out_value_type>::type*>(out.data());

// For the moment, considering the contiguous layout only
auto sign = KokkosFFT::Impl::direction_type<ExecutionSpace>(direction);

Expand Down Expand Up @@ -118,18 +112,21 @@ auto _create(const ExecutionSpace& exec_space, std::unique_ptr<PlanType>& plan,
return fft_size;
}

// In oneMKL, plans are destroybed by destructor
template <
typename ExecutionSpace, typename PlanType,
std::enable_if_t<std::is_same_v<ExecutionSpace, Kokkos::Experimental::SYCL>,
std::nullptr_t> = nullptr>
void _destroy_plan(std::unique_ptr<PlanType>& plan) {}
void _destroy_plan(std::unique_ptr<PlanType>&) {
// In oneMKL, plans are destroybed by destructor
}

template <
typename ExecutionSpace, typename InfoType,
std::enable_if_t<std::is_same_v<ExecutionSpace, Kokkos::Experimental::SYCL>,
std::nullptr_t> = nullptr>
void _destroy_info(InfoType& plan) {}
void _destroy_info(InfoType) {
// not used, no finalization is required
}
} // namespace Impl
} // namespace KokkosFFT

Expand Down

0 comments on commit 58e147a

Please sign in to comment.