-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Initial OpenACC parallel_reduce implementation for Team policy (#5610)
* Initial OpenACC parallel_reduce implementation for Team policy * Clang-format * Apply suggestions from code review Apply suggestions from code review (@masterleinad and @dalg24) Co-authored-by: Daniel Arndt <arndtd@ornl.gov> Co-authored-by: Damien L-G <dalg24+github@gmail.com> * Minor modification as suggested by code review. * Change `always_false` to `always_true`. * Minor fix on parallel_reduce() implementation. * Apply suggestions from code review Co-authored-by: Damien L-G <dalg24+github@gmail.com> * Revert `std::enable_if_t<Kokkos::is_view_v<ViewType>::value>* = nullptr)` back to `std::enable_if_t<Kokkos::is_view<ViewType>::value, void*> = nullptr)` (No definition of is_view_v<> found). * Change `const FunctorType a_functor(m_functor);` to `auto const a_functor = m_functor;` * Rebase this branch and change is_view<> to is_view_v<> * Updated the copyright and rebased this branch. * Add a comment to the parallel-reduce() implementation * Comment out the hierarchical reduction implementations not used for now. * Re-factored the parallel_reduce construct with Team policy to support different reduction types. * Add a missing acc routine directive. * Re-factor parallel_reduce(team policy) constructs. * Set KOKKOS_OPENACC_FEATURE_LEVEL to 14 in core/unit_test/CMakeLists.txt. * Fix minor bugs in the OpenACC parallel_reduce(Team Policy) Versions with KOKKOS_ENABLE_OPENACC_COLLAPSE_HIERARCHICAL_CONSTRUCTS macro enabled and disabled should have different league loop implementations. * Change "auto const a_functor = m_functor;" back to "auto const a_functor(m_functor);" --------- Co-authored-by: Daniel Arndt <arndtd@ornl.gov> Co-authored-by: Damien L-G <dalg24+github@gmail.com>
- Loading branch information
1 parent
59067d4
commit 0130a3f
Showing
7 changed files
with
453 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
428 changes: 428 additions & 0 deletions
428
core/src/OpenACC/Kokkos_OpenACC_ParallelReduce_Team.hpp
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters