Skip to content

Conversation

yasahi-hpc
Copy link
Collaborator

This PR addresses the oneAPI 2025 deprecations as found in Nightly builds.

@yasahi-hpc yasahi-hpc self-assigned this Jun 3, 2025
Copy link
Member

@tpadioleau tpadioleau left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes are ok to me. I think there are remaining deprecation warnings like

/work/fft/src/KokkosFFT_SYCL_plans.hpp:126:51: warning: 'CONJUGATE_EVEN_STORAGE' is deprecated [-Wdeprecated-declarations]
  126 |   plan->set_value(oneapi::mkl::dft::config_param::CONJUGATE_EVEN_STORAGE,
/work/fft/src/KokkosFFT_SYCL_plans.hpp:112:9: warning: 'set_value' is deprecated: Use set_value(config_param, const std::vector<std::int64_t>&) instead. [-Wdeprecated-declarations]
  112 |   plan->set_value(oneapi::mkl::dft::config_param::INPUT_STRIDES,

plan->set_value(oneapi::mkl::dft::config_param::FWD_STRIDES,
in_strides.data());
plan->set_value(oneapi::mkl::dft::config_param::OUTPUT_STRIDES,
plan->set_value(oneapi::mkl::dft::config_param::BWD_STRIDES,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like the macros FWD_STRIDES and BWD_STRIDES are available in older versions of Intel MKL also. Have INPUT_STRIDES and OUTPUT_STRIDES alone been deprecated?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the errors, INPUT_STRIDES and OUTPUT_STRIDES have been deprecated.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FWD_STRIDES and INPUT_STRIDES are having the same meaning. Same with BWD_STRIDES and OUTPUT_STRIDES. I was curious about that.

@yasahi-hpc
Copy link
Collaborator Author

yasahi-hpc commented Jun 3, 2025

The changes are ok to me. I think there are remaining deprecation warnings like

/work/fft/src/KokkosFFT_SYCL_plans.hpp:126:51: warning: 'CONJUGATE_EVEN_STORAGE' is deprecated [-Wdeprecated-declarations]
  126 |   plan->set_value(oneapi::mkl::dft::config_param::CONJUGATE_EVEN_STORAGE,
/work/fft/src/KokkosFFT_SYCL_plans.hpp:112:9: warning: 'set_value' is deprecated: Use set_value(config_param, const std::vector<std::int64_t>&) instead. [-Wdeprecated-declarations]
 112 |   plan->set_value(oneapi::mkl::dft::config_param::INPUT_STRIDES,

Good catch.
I think the former is resolved.
The latter, we need to pass vectors directly, not pointers.

It may be that we can remove set_value(oneapi::mkl::dft::config_param::CONJUGATE_EVEN_STORAGE by using the default in the newer version

https://www.intel.com/content/www/us/en/docs/onemkl/developer-reference-dpcpp/2025-1/configuration-setting-member-functions.html#DFT-DESCRIPTOR-CLASS-TEMPLATE-CONFIGURATION-SETTING-FUNCTIONS

@yasahi-hpc
Copy link
Collaborator Author

@tpadioleau

Are you fine with the current change? Or you think it is better to suppress set_value(oneapi::mkl::dft::config_param::CONJUGATE_EVEN_STORAGE ?

Since I cannot test this on Intel GPU now, I would like to keep it until I confirm that it is OK to be removed

@tpadioleau
Copy link
Member

Should we wait until we can test all the changes to merge then ?

@tpadioleau
Copy link
Member

Has Kokkos fixed all these warnings about this_sub_group ?

@yasahi-hpc
Copy link
Collaborator Author

Has Kokkos fixed all these warnings about this_sub_group ?

Yes, with this
kokkos/kokkos#7918

In the nightly, you may find almost no warnings from kokkos codes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants