1#ifndef KOKKOS_EXECUTION_EXECUTION_SPACE_BULK_HPP
2#define KOKKOS_EXECUTION_EXECUTION_SPACE_BULK_HPP
16 template <
typename Env,
typename Data,
typename Sndr>
21 Kokkos::RangePolicy<exec_of_t<Sndr, Env>>
35 noexcept(std::is_nothrow_constructible_v<
41 auto& [parallel_policy, shape, functor] = data;
43 auto schd = stdexec::get_completion_scheduler<stdexec::set_value_t>(stdexec::get_env(sndr), env);
48 stdexec::__forward_like<Data>(functor),
49 Kokkos::RangePolicy<exec_of_t<Sndr, Env>>(schd.state->exec, 0, shape)}},
50 std::forward<Sndr>(sndr)};
Concept for a sender whose completion scheduler is Kokkos::Execution::ExecutionSpaceImpl::Scheduler.
See https://github.com/NVIDIA/stdexec/blob/16076a81efa4477513e6ede9c2741fd034ecef99/include/stdexec/_...
typename stdexec::__completion_scheduler_of_t< stdexec::set_value_t, Sndr, Env >::execution_space exec_of_t
Type of the execution space extracted from a sender's completion scheduler.
BulkTraits< std::remove_cvref_t< Data > > bulk_traits
consteval std::string_view dispatch_label() noexcept
View the dispatch label as a std::string_view.
ParallelForClosure< Label, Functor, ExecPolicy > closure_t
Custom algorithm for the Kokkos::parallel_for construct.