Pr from fork/680#681
Conversation
Signed-off-by: Adrien Taberner <adrien.taberner@cea.fr>
Signed-off-by: Adrien Taberner <adrien.taberner@cea.fr>
Signed-off-by: Adrien Taberner <adrien.taberner@cea.fr>
|
|
||
| POLYBENCH_HEAT_3D_DATA_SETUP; | ||
|
|
||
| // Views 3D : dimension order (i, j, k), i.e. (N, N, N) |
There was a problem hiding this comment.
Does Kokkos follow the C-style index ordering? Fastest stride is the right most index?
Wondering if its worth noting?
There was a problem hiding this comment.
No, it depends on the configured backend. I think this comment can be removed.
There was a problem hiding this comment.
@Adrien-Tab can you add a comment specifying which ordering is in effect?
There was a problem hiding this comment.
The other thought I had was if kokkos had a backend dependent ordering stride is that worth also having with the native and RAJA variants? This would promote consistency if it is the case. Or have Kokkos use the same striding order used by native and RAJA again for consistency regardless of backend.
There was a problem hiding this comment.
Kokkos should use the same data layout as the other variants of the kernel so the results are as comparable across variants. There are multi dimensional views in multiple files, let's not worry about documenting or fixing that in this PR if it needs to be fixed.
There was a problem hiding this comment.
Sounds good, please capture in an issue if there is an inconsistency.
There was a problem hiding this comment.
@Adrien-Tab are there any cases where kokkos is reordering the data?
There was a problem hiding this comment.
I'm not sure about the reordering question. The default layout shouldn't be an issue since the View default layout and the parallel pattern default iteration order are matched per backend. For GPU backends this means LayoutLeft (Fortran-style indexing).
There was a problem hiding this comment.
Ah interesting, RAJA's default layout is LayoutRight C-style indexing.
Summary