Skip to content

Kokkos 5.0 incompatibility #1342

@BenWibking

Description

@BenWibking

Kokkos 5.0 has some breaking changes that require some changes in Parthenon:

In file included from /ccs/home/wibking/athenapk/external/parthenon/src/kokkos_abstraction.hpp:32:
/ccs/home/wibking/athenapk/external/parthenon/src/parthenon_array_generic.hpp:56:28: error: failed requirement 'implements<kokkos_view (Kokkos::View<double *******, Kokkos::LayoutRight, Kokkos::HostSpace>), void>::value'; 'enable_if' cannot be used to disable this declaration
   56 |           class = ENABLEIF(implements<kokkos_view(Data)>::value)>
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/ccs/home/wibking/athenapk/external/parthenon/src/utils/concepts_lite.hpp:31:48: note: expanded from macro 'ENABLEIF'
   31 | #define ENABLEIF(...) typename std::enable_if<(__VA_ARGS__), int>::type
      |                                                ^~~~~~~~~~~
/ccs/home/wibking/athenapk/external/parthenon/src/parthenon_arrays.hpp:49:1: note: in instantiation of default argument for 'ParArrayGeneric<device_view_t<Real, LayoutWrapper>, empty_state_t>' required here
   49 | PARTHENON_ARRAY_DECL(Real);
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
/ccs/home/wibking/athenapk/external/parthenon/src/parthenon_arrays.hpp:47:25: note: expanded from macro 'PARTHENON_ARRAY_DECL'
   47 |   extern template class ParArrayGeneric<device_view_t<T, LayoutWrapper>, empty_state_t>
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I don't understand what this code is trying to do well enough to attempt a fix.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions