|
kokkos-execution 0.0.1
|
Namespaces | |
| namespace | Functors |
| namespace | gtest_suite_SyncWaitTest_ |
| namespace | Schedulers |
Classes | |
| struct | check_completion_scheduler_type_t |
| struct | check_node_type_t |
| struct | check_rcvr_env_queryable_with_t |
| struct | check_rcvr_env_t |
Check that the receiver environment is of type ExpectedEnv. More... | |
| struct | CheckCompletionSchedulerTypeSender |
| struct | CheckNodeTypeSender |
| struct | CheckRcvrEnvQueryableWithSender |
| struct | CheckRcvrEnvSender |
| struct | ContextTest |
| struct | DomainInheritingFromDefault |
| struct | ExecutionSpaceContextTest |
| struct | GraphContextTest |
| struct | LabeledData |
| struct | MultiPropData |
| struct | MyPropA |
| struct | MyPropB |
| struct | SinkReceiver |
| A receiver that can handle all completions and does nothing with them. More... | |
| struct | SyncWaitTest |
| struct | TrackingAllocator |
| A minimal tracking allocator. More... | |
Concepts | |
| concept | has_completion_scheduler_for |
| concept | operation_state |
A stricter variant of stdexec::operation_state. | |
| concept | has_nothrow_apply_sender |
Check that apply_sender is noexcept. | |
Functions | |
| template<typename Scope, typename Order, typename T> | |
| auto | atomic_fetch_add (T *ptr, const T val) |
Same effect as Kokkos::atomic_fetch_add, given memory scope and order. | |
| template<stdexec::scheduler Schd> | |
| consteval bool | check_continues_on () |
Check how the scheduler customizes stdexec::continues_on. | |
| template<stdexec::scheduler SchedulerType> | |
| consteval bool | check_scheduler () |
Check that the given type models the stdexec::scheduler concept. | |
| template<typename Domain, stdexec::sender Sndr> | |
| consteval bool | check_nothrow_apply_sender () |
| template<typename DomainType> | |
| consteval bool | check_if_common_domain_is_default () |
Check if a domain has the stdexec::default_domain as common domain with a few other domains. | |
| template<typename DomainType, typename Tag, stdexec::sender ScheduleSenderType, typename... Args> | |
| consteval bool | check_if_domain_has_transform_sender_for () |
Check if the domain has a transform of a Tag sender. | |
| template<typename DomainType, typename Tag, stdexec::sender ScheduleSenderType, typename... Args> | |
| consteval bool | check_if_default_domain_like_for () |
Check if the domain's transform of a Tag sender is "default-like". | |
| template<typename SchedulerType, typename Tag, typename... Args> | |
| consteval bool | check_continues_on_after_just_stopped () |
| template<Kokkos::ExecutionSpace Exec, Kokkos::ExecutionSpace OtherExec> | |
| bool | are_same_instances (const Exec &exec, const OtherExec &other_exec) |
| template<Kokkos::ExecutionSpace Exec> | |
| constexpr bool | on_device () |
| template<Kokkos::ExecutionSpace Exec> | |
| void | show_exec_space_id (const Exec &exec, std::string_view label="", std::ostream &out=std::cout) |
| template<typename ViewType> requires (ViewType::rank() == 1) | |
| auto | span_from (const ViewType &view) noexcept |
Get a std::span from a rank-one Kokkos::View. | |
| template<stdexec::__is_instance_of< Kokkos::utils::callbacks::RecorderListener > RecorderListenerType, stdexec::sender Sndr> | |
| auto | record_sync_wait (Sndr &&sndr) |
| template<typename Allocator, typename T> | |
| auto | round_trip_allocate (Allocator &allocator, T &&value) |
Variables | |
| static bool | gtest_SyncWaitTestExecutionSpaceInstantiation_SyncWaitTest = ::testing::internal::TypeParameterizedTestSuite< SyncWaitTest, gtest_suite_SyncWaitTest_::gtest_AllTests_, ::testing::internal::GenerateTypeList<::testing::Types<Kokkos::Execution::ExecutionSpaceContext<TEST_EXECUTION_SPACE>>>::type>:: Register( "SyncWaitTestExecutionSpaceInstantiation" , ::testing::internal::CodeLocation("/__w/kokkos-execution/kokkos-execution/tests/execution_space/test_sync_wait.cpp", 25), & gtest_typed_test_suite_p_state_SyncWaitTest_ , "SyncWaitTest" , gtest_registered_test_names_SyncWaitTest_ , ::testing::internal::GenerateNames< ::testing::internal::NameGeneratorSelector< >::type, ::testing::internal::GenerateTypeList<::testing::Types<Kokkos::Execution::ExecutionSpaceContext<TEST_EXECUTION_SPACE>>>::type>()) |
| static bool | gtest_SyncWaitTestGraphInstantiation_SyncWaitTest = ::testing::internal::TypeParameterizedTestSuite< SyncWaitTest, gtest_suite_SyncWaitTest_::gtest_AllTests_, ::testing::internal::GenerateTypeList<::testing::Types<Kokkos::Execution::GraphContext<TEST_EXECUTION_SPACE>>>::type>:: Register( "SyncWaitTestGraphInstantiation" , ::testing::internal::CodeLocation("/__w/kokkos-execution/kokkos-execution/tests/graph/test_sync_wait.cpp", 25), & gtest_typed_test_suite_p_state_SyncWaitTest_ , "SyncWaitTest" , gtest_registered_test_names_SyncWaitTest_ , ::testing::internal::GenerateNames< ::testing::internal::NameGeneratorSelector< >::type, ::testing::internal::GenerateTypeList<::testing::Types<Kokkos::Execution::GraphContext<TEST_EXECUTION_SPACE>>>::type>()) |
| template<typename Tag, stdexec::scheduler Schd> | |
| constexpr check_completion_scheduler_type_t< Tag, Schd > | check_completion_scheduler_type {} |
| template<typename NodeType> | |
| constexpr check_node_type_t< NodeType > | check_node_type {} |
The provided type NodeType is compared without cv type qualifiers during connect. | |
| template<typename ExpectedEnv> | |
| constexpr check_rcvr_env_t< ExpectedEnv > | check_rcvr_env {} |
| template<typename... Queries> | |
| constexpr check_rcvr_env_queryable_with_t< true, Queries... > | check_rcvr_env_queryable_with {} |
| template<typename... Queries> | |
| constexpr check_rcvr_env_queryable_with_t< false, Queries... > | check_rcvr_env_not_queryable_with {} |
| ::testing::internal::TypedTestSuitePState | gtest_typed_test_suite_p_state_SyncWaitTest_ |
| static const char *const | gtest_registered_test_names_SyncWaitTest_ = gtest_typed_test_suite_p_state_SyncWaitTest_ .VerifyRegisteredTestNames( "SyncWaitTest" , "/__w/kokkos-execution/kokkos-execution/tests/utils/check_sync_wait.hpp", 138, "get_start_scheduler, just, set_value_no_spurious_fence, set_stopped_no_spurious_fence, rethrows") |
| bool Tests::Utils::are_same_instances | ( | const Exec & | exec, |
| const OtherExec & | other_exec ) |
Definition at line 18 of file kokkos.hpp.
References are_same_instances().
| auto Tests::Utils::atomic_fetch_add | ( | T * | ptr, |
| const T | val ) |
Same effect as Kokkos::atomic_fetch_add, given memory scope and order.
Definition at line 68 of file atomic.hpp.
References atomic_fetch_add().
|
consteval |
Check how the scheduler customizes stdexec::continues_on.
Use this function to ensure your own scheduler is properly customizing everything that's needed.
Check the complete sender type.
Diagnose any issue that could make the resulting sender invalid.
Check the completing domain;
It must advertise a valid completion scheduler.
Handle the case of dependent senders.
Definition at line 20 of file check_continues_on.hpp.
References check_continues_on().
|
consteval |
Trying to pass the sender to stdexec::sync_wait will fail on the static_assert in https://github.com/NVIDIA/stdexec/blob/7c8c3c3d5a0d0b16963a00192dbfae5db9c2c627/include/stdexec/__detail/__sync_wait.hpp#L199-L219.
Definition at line 11 of file just_stopped.hpp.
References check_continues_on_after_just_stopped().
|
consteval |
Check if a domain has the stdexec::default_domain as common domain with a few other domains.
Definition at line 14 of file domain.hpp.
References check_if_common_domain_is_default().
|
consteval |
Check if the domain's transform of a Tag sender is "default-like".
Definition at line 34 of file domain.hpp.
References check_if_default_domain_like_for().
|
consteval |
Check if the domain has a transform of a Tag sender.
Definition at line 21 of file domain.hpp.
References check_if_domain_has_transform_sender_for().
|
consteval |
stdexec::sync_wait. Definition at line 31 of file check_sync_wait.hpp.
References check_nothrow_apply_sender().
|
consteval |
Check that the given type models the stdexec::scheduler concept.
According to https://eel.is/c++draft/exec.sched#1, a valid scheduler must have a scheduler_concept alias. However, as of https://github.com/NVIDIA/stdexec/blob/0e9983599d0c95fca3fd11baa02564eb53fb14f6/include/stdexec/__detail/__schedulers.hpp#L74, it is not checked by stdexec::scheduler.
Related to https://github.com/NVIDIA/stdexec/issues/1406.
According to https://eel.is/c++draft/exec.sched#1, a schedule invocation must return a sender.
Definition at line 10 of file check_scheduler.hpp.
References check_scheduler().
|
constexpr |
Definition at line 27 of file kokkos.hpp.
References on_device().
| auto Tests::Utils::record_sync_wait | ( | Sndr && | sndr | ) |
Definition at line 14 of file sync_wait.hpp.
References record_sync_wait().
| auto Tests::Utils::round_trip_allocate | ( | Allocator & | allocator, |
| T && | value ) |
Allocate one T through alloc, copy construct in-place from value, then deallocate.
Definition at line 39 of file tracking_allocator.hpp.
References round_trip_allocate().
| void Tests::Utils::show_exec_space_id | ( | const Exec & | exec, |
| std::string_view | label = "", | ||
| std::ostream & | out = std::cout ) |
Definition at line 38 of file kokkos.hpp.
References show_exec_space_id().
|
noexcept |
Get a std::span from a rank-one Kokkos::View.
Definition at line 46 of file kokkos.hpp.
References span_from().
|
inlineconstexpr |
Definition at line 76 of file check_completion_scheduler_type.hpp.
|
inlineconstexpr |
The provided type NodeType is compared without cv type qualifiers during connect.
Definition at line 62 of file check_node_type.hpp.
|
inlineconstexpr |
Definition at line 50 of file check_rcvr_env.hpp.
|
inlineconstexpr |
Definition at line 78 of file check_rcvr_env_queryable_with.hpp.
|
inlineconstexpr |
Definition at line 75 of file check_rcvr_env_queryable_with.hpp.
|
static |
Definition at line 138 of file check_sync_wait.hpp.
|
static |
Definition at line 25 of file test_sync_wait.cpp.
|
static |
Definition at line 25 of file test_sync_wait.cpp.
|
static |
Definition at line 58 of file check_sync_wait.hpp.