ttg_parsec::detail Namespace Reference
Classes | |
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_parsec_data_wrapper_t |
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) |
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 > | |
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 TT , std::size_t I> | |
void | transfer_ownership_impl (ttg_data_copy_t *copy, 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 |
◆ 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 138 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>
|
inline |
Definition at line 119 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>
|
inline |
Definition at line 160 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>
|
inline |
Definition at line 21 of file devicefunc.h.
◆ release_data_copy()
|
inline |
◆ remove_data_copy()
|
inline |
◆ transfer_ownership()
template<typename TT , std::size_t... Is>
|
inline |
◆ transfer_ownership_impl()
template<typename TT , std::size_t I>
|
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.