ttg_parsec::detail Namespace Reference
Classes | |
| struct | empty_allocator |
| struct | ttg_parsec_data_types |
| struct | ptr_impl |
| struct | device_ptr_t |
| struct | device_state_t |
| struct | device_state_t< true > |
| struct | parsec_ttg_task_base_t |
| struct | parsec_ttg_task_t |
| struct | parsec_ttg_task_t< TT, true > |
| struct | reducer_task_t |
| struct | msg_t |
| class | rma_delayed_activate |
| struct | ParsecTTBase |
| struct | ttg_data_copy_container_setter |
| struct | ttg_data_copy_self_t |
| struct | ttg_data_copy_t |
| struct | ttg_data_value_copy_t |
| struct | is_ttvalue_base |
| struct | is_ttvalue_base< T, std::is_base_of< TTValue< std::decay_t< T > >, std::decay_t< T > > > |
| struct | persistent_value_ref |
Typedefs | |
| typedef parsec_hook_return_t(* | parsec_static_op_t) (void *) |
Enumerations | |
| enum class | ttg_parsec_data_flags : uint8_t { NONE = 0 , SINGLE_READER = 1 << 0 , MULTIPLE_READER = 1 << 1 , SINGLE_WRITER = 1 << 2 , MULTIPLE_WRITER = 1 << 3 , IS_MODIFIED = 1 << 4 , MARKED_PUSHOUT = 1 << 5 } |
Functions | |
| template<typename T , typename A > | |
| parsec_data_t * | get_parsec_data (const ttg_parsec::Buffer< T, A > &db) |
| template<typename T > | |
| T * | to_address (T *ptr) |
| template<typename T > | |
| auto | to_address (T &&ptr) |
| int | ttg_device_to_parsec_device (const ttg::device::Device &device) |
| ttg::device::Device | parsec_device_to_ttg_device (int parsec_id) |
| template<typename... Views, std::size_t I, std::size_t... Is> | |
| bool | register_device_memory (std::tuple< Views &... > &views, std::index_sequence< I, Is... >) |
| template<typename... Views, std::size_t I, std::size_t... Is, bool DeviceAvail = false> | |
| void | mark_device_out (std::tuple< Views &... > &views, std::index_sequence< I, Is... >) |
| template<typename... Views, std::size_t I, std::size_t... Is> | |
| void | post_device_out (std::tuple< Views &... > &views, std::index_sequence< I, Is... >) |
| template<typename T > | |
| parsec_data_t * | get_parsec_data (const ttg_parsec::devicescratch< T > &) |
| template<typename Value , typename Fn > | |
| void | foreach_parsec_data (Value &&value, Fn &&fn) |
| template<typename Value > | |
| ttg_data_copy_t * | create_new_datacopy (Value &&value) |
| template<typename T > | |
| ttg_parsec::detail::ttg_data_copy_t * | get_copy (ttg_parsec::Ptr< T > &p) |
| template<typename T > | |
| detail::ttg_data_copy_t * | get_copy (ttg_parsec::Ptr< T > &p) |
| ttg_parsec_data_flags | operator| (ttg_parsec_data_flags lhs, ttg_parsec_data_flags rhs) |
| ttg_parsec_data_flags | operator|= (ttg_parsec_data_flags &lhs, ttg_parsec_data_flags rhs) |
| uint8_t | operator& (ttg_parsec_data_flags lhs, ttg_parsec_data_flags rhs) |
| ttg_parsec_data_flags | operator&= (ttg_parsec_data_flags &lhs, ttg_parsec_data_flags rhs) |
| bool | operator! (ttg_parsec_data_flags lhs) |
| ttg_data_copy_t *& | ttg_data_copy_container () |
| bool & | initialized_mpi () |
| ttg_data_copy_t * | find_copy_in_task (parsec_ttg_task_base_t *task, const void *ptr) |
| int | find_index_of_copy_in_task (parsec_ttg_task_base_t *task, const void *ptr) |
| bool | add_copy_to_task (ttg_data_copy_t *copy, parsec_ttg_task_base_t *task) |
| void | remove_data_copy (ttg_data_copy_t *copy, parsec_ttg_task_base_t *task) |
| template<typename T > | |
| void | transfer_ownership_impl (T &&arg, int device) |
| template<typename TT , std::size_t... Is> | |
| void | transfer_ownership (parsec_ttg_task_t< TT > *me, int device, std::index_sequence< Is... >) |
| template<typename TT > | |
| parsec_hook_return_t | hook (struct parsec_execution_stream_s *es, parsec_task_t *parsec_task) |
| template<typename TT > | |
| parsec_hook_return_t | hook_cuda (struct parsec_execution_stream_s *es, parsec_task_t *parsec_task) |
| template<typename TT > | |
| parsec_hook_return_t | hook_hip (struct parsec_execution_stream_s *es, parsec_task_t *parsec_task) |
| template<typename TT > | |
| parsec_hook_return_t | hook_level_zero (struct parsec_execution_stream_s *es, parsec_task_t *parsec_task) |
| template<typename TT > | |
| parsec_hook_return_t | evaluate_cuda (const parsec_task_t *parsec_task) |
| template<typename TT > | |
| parsec_hook_return_t | evaluate_hip (const parsec_task_t *parsec_task) |
| template<typename TT > | |
| parsec_hook_return_t | evaluate_level_zero (const parsec_task_t *parsec_task) |
| void | release_data_copy (ttg_data_copy_t *copy) |
| template<typename Value > | |
| ttg_data_copy_t * | register_data_copy (ttg_data_copy_t *copy_in, parsec_ttg_task_base_t *task, bool readonly) |
Variables | |
| int | first_device_id = -1 |
| thread_local parsec_ttg_task_base_t * | parsec_ttg_caller = nullptr |
| constexpr const int | PARSEC_TTG_MAX_AM_SIZE = 1 * 1024*1024 |
| std::size_t | max_inline_size = msg_t::max_payload_size |
| bool | all_devices_peer_access |
| const parsec_symbol_t | parsec_taskclass_param0 |
| const parsec_symbol_t | parsec_taskclass_param1 |
| const parsec_symbol_t | parsec_taskclass_param2 |
| const parsec_symbol_t | parsec_taskclass_param3 |
Typedef Documentation
◆ parsec_static_op_t
| typedef parsec_hook_return_t(* ttg_parsec::detail::parsec_static_op_t) (void *) |
Enumeration Type Documentation
◆ ttg_parsec_data_flags
|
strong |
Function Documentation
◆ add_copy_to_task()
|
inline |
◆ create_new_datacopy()
template<typename Value >
|
inline |
◆ evaluate_cuda()
template<typename TT >
|
inline |
◆ evaluate_hip()
template<typename TT >
|
inline |
◆ evaluate_level_zero()
template<typename TT >
|
inline |
◆ find_copy_in_task()
|
inline |
◆ find_index_of_copy_in_task()
|
inline |
◆ foreach_parsec_data()
template<typename Value , typename Fn >
| void ttg_parsec::detail::foreach_parsec_data | ( | Value && | value, |
| Fn && | fn | ||
| ) |
Definition at line 9 of file parsec_data.h.
◆ get_copy() [1/2]
template<typename T >
|
inline |
◆ get_copy() [2/2]
template<typename T >
|
inline |
◆ get_parsec_data() [1/2]
template<typename T , typename A >
| parsec_data_t * ttg_parsec::detail::get_parsec_data | ( | const ttg_parsec::Buffer< T, A > & | db | ) |
◆ get_parsec_data() [2/2]
template<typename T >
| parsec_data_t * ttg_parsec::detail::get_parsec_data | ( | const ttg_parsec::devicescratch< T > & | scratch | ) |
Definition at line 120 of file devicescratch.h.
◆ hook()
template<typename TT >
|
inline |
◆ hook_cuda()
template<typename TT >
|
inline |
◆ hook_hip()
template<typename TT >
|
inline |
◆ hook_level_zero()
template<typename TT >
|
inline |
◆ initialized_mpi()
◆ mark_device_out()
template<typename... Views, std::size_t I, std::size_t... Is, bool DeviceAvail = false>
| void ttg_parsec::detail::mark_device_out | ( | std::tuple< Views &... > & | views, |
| std::index_sequence< I, Is... > | |||
| ) |
Definition at line 192 of file devicefunc.h.
◆ operator!()
|
inline |
◆ operator&()
|
inline |
◆ operator&=()
|
inline |
◆ operator|()
|
inline |
◆ operator|=()
|
inline |
◆ parsec_device_to_ttg_device()
|
inline |
◆ post_device_out()
template<typename... Views, std::size_t I, std::size_t... Is>
| void ttg_parsec::detail::post_device_out | ( | std::tuple< Views &... > & | views, |
| std::index_sequence< I, Is... > | |||
| ) |
Definition at line 234 of file devicefunc.h.
◆ register_data_copy()
template<typename Value >
|
inline |
◆ register_device_memory()
template<typename... Views, std::size_t I, std::size_t... Is>
| bool ttg_parsec::detail::register_device_memory | ( | std::tuple< Views &... > & | views, |
| std::index_sequence< I, Is... > | |||
| ) |
Definition at line 11 of file devicefunc.h.
◆ release_data_copy()
|
inline |
◆ remove_data_copy()
|
inline |
◆ to_address() [1/2]
template<typename T >
|
inline |
◆ to_address() [2/2]
template<typename T >
|
inline |
◆ transfer_ownership()
template<typename TT , std::size_t... Is>
|
inline |
◆ transfer_ownership_impl()
template<typename T >
|
inline |
◆ ttg_data_copy_container()
|
inline |
Definition at line 14 of file thread_local.h.
◆ ttg_device_to_parsec_device()
|
inline |
Variable Documentation
◆ all_devices_peer_access
◆ first_device_id
◆ max_inline_size
|
inline |
◆ parsec_taskclass_param0
| const parsec_symbol_t ttg_parsec::detail::parsec_taskclass_param0 |
◆ parsec_taskclass_param1
| const parsec_symbol_t ttg_parsec::detail::parsec_taskclass_param1 |
◆ parsec_taskclass_param2
| const parsec_symbol_t ttg_parsec::detail::parsec_taskclass_param2 |
◆ parsec_taskclass_param3
| const parsec_symbol_t ttg_parsec::detail::parsec_taskclass_param3 |
◆ parsec_ttg_caller
|
inline |
Definition at line 12 of file thread_local.h.
1.9.1