|
#define | ABT_API_PUBLIC |
|
#define | ABT_VERSION "1.1" |
| Version string of Argobots. More...
|
|
#define | ABT_NUMVERSION 10100300 |
| Version number of Argobots. More...
|
|
#define | ABT_RELEASE_TYPE_ALPHA 0 |
|
#define | ABT_RELEASE_TYPE_BETA 1 |
|
#define | ABT_RELEASE_TYPE_RC 2 |
|
#define | ABT_RELEASE_TYPE_PATCH 3 |
|
#define | ABT_CALC_VERSION(MAJOR, MINOR, REVISION, TYPE, PATCH) (((MAJOR) * 10000000) + ((MINOR) * 100000) + ((REVISION) * 1000) + ((TYPE) * 100) + (PATCH)) |
|
#define | ABT_DEPRECATED __attribute__((deprecated)) |
|
#define | ABT_ENABLE_VER_20_API_VAL 0 |
|
#define | ABT_SUCCESS 0 |
| Error code: the routine returns successfully. More...
|
|
#define | ABT_ERR_UNINITIALIZED 1 |
| Error code: Argobots it not initialized. More...
|
|
#define | ABT_ERR_MEM 2 |
| Error code: Memory allocation failure. More...
|
|
#define | ABT_ERR_OTHER 3 |
| Error code: other error. More...
|
|
#define | ABT_ERR_INV_XSTREAM 4 |
| Error code: invalid execution stream. More...
|
|
#define | ABT_ERR_INV_XSTREAM_RANK 5 |
| Error code: invalid execution stream rank. More...
|
|
#define | ABT_ERR_INV_XSTREAM_BARRIER 6 |
| Error code: invalid execution stream barrier. More...
|
|
#define | ABT_ERR_INV_SCHED 7 |
| Error code: invalid scheduler. More...
|
|
#define | ABT_ERR_INV_SCHED_KIND 8 |
| Error code: invalid scheduler kind. More...
|
|
#define | ABT_ERR_INV_SCHED_PREDEF 9 |
| Error code: invalid predefined scheduler type. More...
|
|
#define | ABT_ERR_INV_SCHED_TYPE 10 |
| Unused error code. More...
|
|
#define | ABT_ERR_INV_SCHED_CONFIG 11 |
| Error code: invalid scheduler configuration. More...
|
|
#define | ABT_ERR_INV_POOL 12 |
| Error code: invalid pool. More...
|
|
#define | ABT_ERR_INV_POOL_KIND 13 |
| Error code: invalid pool kind. More...
|
|
#define | ABT_ERR_INV_POOL_ACCESS 14 |
| Error code: invalid pool access type. More...
|
|
#define | ABT_ERR_INV_POOL_CONFIG 56 |
| Error code: invalid pool configuration. More...
|
|
#define | ABT_ERR_INV_POOL_USER_DEF 57 |
| Error code: invalid pool definition. More...
|
|
#define | ABT_ERR_INV_UNIT 15 |
| Error code: invalid work unit for scheduling. More...
|
|
#define | ABT_ERR_INV_THREAD 16 |
| Error code: invalid work unit. More...
|
|
#define | ABT_ERR_INV_THREAD_ATTR 17 |
| Error code: invalid ULT attribute. More...
|
|
#define | ABT_ERR_INV_TASK 18 |
| Error code: invalid work unit. More...
|
|
#define | ABT_ERR_INV_KEY 19 |
| Error code: invalid work-unit-specific data key. More...
|
|
#define | ABT_ERR_INV_MUTEX 20 |
| Error code: invalid mutex. More...
|
|
#define | ABT_ERR_INV_MUTEX_ATTR 21 |
| Error code: invalid mutex attribute. More...
|
|
#define | ABT_ERR_INV_COND 22 |
| Error code: invalid condition variable. More...
|
|
#define | ABT_ERR_INV_RWLOCK 23 |
| Error code: invalid readers-writer lock. More...
|
|
#define | ABT_ERR_INV_EVENTUAL 24 |
| Error code: invalid eventual. More...
|
|
#define | ABT_ERR_INV_FUTURE 25 |
| Error code: invalid future. More...
|
|
#define | ABT_ERR_INV_BARRIER 26 |
| Error code: invalid barrier. More...
|
|
#define | ABT_ERR_INV_TIMER 27 |
| Error code: invalid timer. More...
|
|
#define | ABT_ERR_INV_QUERY_KIND 28 |
| Error code: invalid query kind. More...
|
|
#define | ABT_ERR_INV_TOOL_CONTEXT 52 |
| Error code: invalid tool context. More...
|
|
#define | ABT_ERR_INV_ARG 53 |
| Error code: invalid user argument. More...
|
|
#define | ABT_ERR_XSTREAM 29 |
| Error code: error related to an execution stream. More...
|
|
#define | ABT_ERR_XSTREAM_STATE 30 |
| Error code: error related to an execution stream state. More...
|
|
#define | ABT_ERR_XSTREAM_BARRIER 31 |
| Error code: error related to an execution stream. More...
|
|
#define | ABT_ERR_SCHED 32 |
| Error code: error related to a scheduler. More...
|
|
#define | ABT_ERR_SCHED_CONFIG 33 |
| Error code: error related to a scheduler configuration. More...
|
|
#define | ABT_ERR_POOL 34 |
| Error code: error related to a pool. More...
|
|
#define | ABT_ERR_UNIT 35 |
| Error code: error related to a work unit for scheduling. More...
|
|
#define | ABT_ERR_THREAD 36 |
| Error code: error related to a work unit. More...
|
|
#define | ABT_ERR_TASK 37 |
| Error code: error related to a work unit. More...
|
|
#define | ABT_ERR_KEY 38 |
| Error code: error related to a work-unit-specific data key. More...
|
|
#define | ABT_ERR_MUTEX 39 |
| Error code: error related to a mutex. More...
|
|
#define | ABT_ERR_MUTEX_LOCKED 40 |
| Error code: a return value when a mutex is locked. More...
|
|
#define | ABT_ERR_COND 41 |
| Error code: error related to a condition variable. More...
|
|
#define | ABT_ERR_COND_TIMEDOUT 42 |
| Error code: a return value when a condition variable is timed out. More...
|
|
#define | ABT_ERR_RWLOCK 43 |
| Error code: error related to a readers-writer lock. More...
|
|
#define | ABT_ERR_EVENTUAL 44 |
| Error code: error related to an eventual. More...
|
|
#define | ABT_ERR_FUTURE 45 |
| Error code: error related to a future. More...
|
|
#define | ABT_ERR_BARRIER 46 |
| Error code: error related to a barrier. More...
|
|
#define | ABT_ERR_TIMER 47 |
| Error code: error related to a timer. More...
|
|
#define | ABT_ERR_MIGRATION_TARGET 48 |
| Error code: error related to a migration target. More...
|
|
#define | ABT_ERR_MIGRATION_NA 49 |
| Error code: migration is not supported. More...
|
|
#define | ABT_ERR_MISSING_JOIN 50 |
| Unused error code. More...
|
|
#define | ABT_ERR_FEATURE_NA 51 |
| Error code: unsupported feature. More...
|
|
#define | ABT_ERR_SYS 54 |
| Error code: error related to system calls and standard libraries. More...
|
|
#define | ABT_ERR_CPUID 55 |
| Error code: error related to CPU ID. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_NONE (0) |
| Work-unit-event mask: none. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_CREATE (1 << 0) |
| Work-unit-event mask: creating a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_JOIN (1 << 1) |
| Work-unit-event mask: joining a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_FREE (1 << 2) |
| Work-unit-event mask: freeing a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_REVIVE (1 << 3) |
| Work-unit-event mask: reviving a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_RUN (1 << 4) |
| Work-unit-event mask: running a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_FINISH (1 << 5) |
| Work-unit-event mask: finishing a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_CANCEL (1 << 6) |
| Work-unit-event mask: canceling a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_YIELD (1 << 7) |
| Work-unit-event mask: yielding a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_SUSPEND (1 << 8) |
| Work-unit-event mask: suspending a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_RESUME (1 << 9) |
| Work-unit-event mask: resuming a work unit. More...
|
|
#define | ABT_TOOL_EVENT_THREAD_ALL ((uint64_t)((1 << 12) - 1)) |
| Work-unit-event mask: all events. More...
|
|
#define | ABT_TRUE 1 |
| True constant for ABT_bool. More...
|
|
#define | ABT_FALSE 0 |
| False constant for ABT_bool. More...
|
|
#define | ABT_XSTREAM_ANY_RANK -1 |
| Unused macro. More...
|
|
#define | ABT_NULL 0 |
|
#define | ABT_XSTREAM_NULL ((ABT_xstream) (0x01)) |
|
#define | ABT_XSTREAM_BARRIER_NULL ((ABT_xstream_barrier)(0x02)) |
|
#define | ABT_SCHED_NULL ((ABT_sched) (0x03)) |
|
#define | ABT_SCHED_CONFIG_NULL ((ABT_sched_config) (0x04)) |
|
#define | ABT_POOL_NULL ((ABT_pool) (0x05)) |
|
#define | ABT_POOL_CONFIG_NULL ((ABT_pool_config) (0x06)) |
|
#define | ABT_UNIT_NULL ((ABT_unit) (0x07)) |
|
#define | ABT_THREAD_NULL ((ABT_thread) (0x08)) |
|
#define | ABT_THREAD_ATTR_NULL ((ABT_thread_attr) (0x09)) |
|
#define | ABT_TASK_NULL ((ABT_task) (0x0a)) |
|
#define | ABT_KEY_NULL ((ABT_key) (0x0b)) |
|
#define | ABT_MUTEX_NULL ((ABT_mutex) (0x0c)) |
|
#define | ABT_MUTEX_ATTR_NULL ((ABT_mutex_attr) (0x0d)) |
|
#define | ABT_COND_NULL ((ABT_cond) (0x0e)) |
|
#define | ABT_RWLOCK_NULL ((ABT_rwlock) (0x0f)) |
|
#define | ABT_EVENTUAL_NULL ((ABT_eventual) (0x10)) |
|
#define | ABT_FUTURE_NULL ((ABT_future) (0x11)) |
|
#define | ABT_BARRIER_NULL ((ABT_barrier) (0x12)) |
|
#define | ABT_TIMER_NULL ((ABT_timer) (0x13)) |
|
#define | ABT_TOOL_CONTEXT_NULL ((ABT_tool_context) (0x14)) |
|
#define | ABT_POOL_USER_DEF_NULL ((ABT_pool_user_def) (0x15)) |
|
#define | ABT_MUTEX_INITIALIZER { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } |
| Initialize ABT_mutex_memory . More...
|
|
#define | ABT_RECURSIVE_MUTEX_INITIALIZER { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } |
| Initialize ABT_mutex_memory with a recursive property. More...
|
|
#define | ABT_MUTEX_MEMORY_GET_HANDLE(p_mutex_memory) ((ABT_mutex)p_mutex_memory) |
| Obtain ABT_mutex from ABT_mutex_memory . More...
|
|
#define | ABT_COND_INITIALIZER { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } |
| Initialize ABT_cond_memory . More...
|
|
#define | ABT_COND_MEMORY_GET_HANDLE(p_cond_memory) ((ABT_cond)p_cond_memory) |
| Obtain ABT_cond from ABT_cond_memory . More...
|
|
#define | ABT_EVENTUAL_INITIALIZER { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } |
| Initialize ABT_eventual_memory . More...
|
|
#define | ABT_EVENTUAL_MEMORY_GET_HANDLE(p_eventual_memory) ((ABT_eventual)p_eventual_memory) |
| Obtain ABT_eventual from ABT_eventual_memory . More...
|
|
#define | ABT_POOL_CONTEXT_PRIO_DEFAULT_PRIO ((ABT_pool_context)0x0) |
| A flag that hints a default priority. More...
|
|
#define | ABT_POOL_CONTEXT_PRIO_HIGH_PRIO ((ABT_pool_context)0x1) |
| A flag that hints a high priority. More...
|
|
#define | ABT_POOL_CONTEXT_PRIO_LOW_PRIO ((ABT_pool_context)0x2) |
| A flag that hints a low priority. More...
|
|
#define | ABT_POOL_CONTEXT_OWNER_DEFAULT ((ABT_pool_context)0x0) |
| A flag that hints a default ownership of a pool. More...
|
|
#define | ABT_POOL_CONTEXT_OWNER_PRIMARY ((ABT_pool_context)0x100) |
| A flag that hints a primary ownership of a pool. More...
|
|
#define | ABT_POOL_CONTEXT_OWNER_SECONDARY ((ABT_pool_context)0x200) |
| A flag that hints a secondary ownership of a pool. More...
|
|
#define | ABT_POOL_CONTEXT_OP_POOL_OTHER ((ABT_pool_context)0x0) |
| A flag that hints an unspecified pool operation. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_CREATE ((ABT_pool_context)0x1000) |
| A flag that hints a push operation in a thread creation routine without a yield operation. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_CREATE_TO ((ABT_pool_context)0x2000) |
| A flag that hints a push operation in a thread creation routine with a yield operation. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_REVIVE ((ABT_pool_context)0x4000) |
| A flag that hints a push operation in a thread revival routine without a yield operation. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_REVIVE_TO ((ABT_pool_context)0x8000) |
| A flag that hints a push operation in a thread revival routine with a yield operation. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_YIELD ((ABT_pool_context)0x10000) |
| A flag that hints a push operation in a thread yield routine. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_YIELD_TO ((ABT_pool_context)0x20000) |
| A flag that hints a push operation in a thread yield-to routine. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_RESUME_YIELD_TO ((ABT_pool_context)0x40000) |
| A flag that hints a push operation in a thread resume-yield-to routine. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_YIELD_LOOP ((ABT_pool_context)0x80000) |
| A flag that hints a push operation in a yield operation in a synchronization loop. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_RESUME ((ABT_pool_context)0x100000) |
| A flag that hints a push operation in a thread resume routine. More...
|
|
#define | ABT_POOL_CONTEXT_OP_THREAD_MIGRATE ((ABT_pool_context)0x200000) |
| A flag that hints a push operation for thread migration. More...
|
|
#define | ABT_task_is_unnamed ABT_thread_is_unnamed |
|
#define | ABT_task_set_specific ABT_thread_set_specific |
|
#define | ABT_task_get_specific ABT_thread_get_specific |
|
#define | ABT_self_get_task ABT_self_get_thread |
|
#define | ABT_self_get_task_id ABT_self_get_thread_id |
|
|
typedef struct ABT_xstream_opaque * | ABT_xstream |
| Execution stream handle type. More...
|
|
typedef enum ABT_xstream_state | ABT_xstream_state |
| Execution stream state type. More...
|
|
typedef struct ABT_xstream_barrier_opaque * | ABT_xstream_barrier |
| Execution-stream barrier handle type. More...
|
|
typedef struct ABT_sched_opaque * | ABT_sched |
| Scheduler handle type. More...
|
|
typedef struct ABT_sched_config_opaque * | ABT_sched_config |
| Scheduler configuration handle type. More...
|
|
typedef enum ABT_sched_predef | ABT_sched_predef |
| Predefined scheduler type. More...
|
|
typedef enum ABT_sched_state | ABT_sched_state |
| Scheduler state type. More...
|
|
typedef enum ABT_sched_type | ABT_sched_type |
| Scheduler's work unit type. More...
|
|
typedef struct ABT_pool_opaque * | ABT_pool |
| Pool handle type. More...
|
|
typedef struct ABT_pool_config_opaque * | ABT_pool_config |
| Pool configuration handle type. More...
|
|
typedef enum ABT_pool_kind | ABT_pool_kind |
| Predefined pool type. More...
|
|
typedef enum ABT_pool_access | ABT_pool_access |
| Pool access type. More...
|
|
typedef struct ABT_pool_def * | ABT_pool_user_def |
| Pool definition. More...
|
|
typedef struct ABT_unit_opaque * | ABT_unit |
| Work unit handle type for scheduling. More...
|
|
typedef enum ABT_unit_type | ABT_unit_type |
| Work unit type. More...
|
|
typedef uint64_t | ABT_unit_id |
| Work unit ID type. More...
|
|
typedef struct ABT_thread_opaque * | ABT_thread |
| Work unit handle type. More...
|
|
typedef struct ABT_thread_attr_opaque * | ABT_thread_attr |
| ULT attribute handle type. More...
|
|
typedef enum ABT_thread_state | ABT_thread_state |
| Work unit state type. More...
|
|
typedef enum ABT_task_state | ABT_task_state |
| Tasklet state type. More...
|
|
typedef ABT_unit_id | ABT_thread_id |
| Work unit ID type. More...
|
|
typedef struct ABT_thread_opaque * | ABT_task |
| Work unit handle type. More...
|
|
typedef struct ABT_key_opaque * | ABT_key |
| Work-unit-specific data key handle type. More...
|
|
typedef struct ABT_mutex_opaque * | ABT_mutex |
| Mutex handle type. More...
|
|
typedef struct ABT_mutex_attr_opaque * | ABT_mutex_attr |
| Mutex attribute handle type. More...
|
|
typedef struct ABT_cond_opaque * | ABT_cond |
| Condition variable handle type. More...
|
|
typedef struct ABT_rwlock_opaque * | ABT_rwlock |
| Readers-writer lock handle type. More...
|
|
typedef struct ABT_eventual_opaque * | ABT_eventual |
| Eventual handle type. More...
|
|
typedef struct ABT_future_opaque * | ABT_future |
| Future handle type. More...
|
|
typedef struct ABT_barrier_opaque * | ABT_barrier |
| Barrier handle type. More...
|
|
typedef struct ABT_timer_opaque * | ABT_timer |
| Timer handle type. More...
|
|
typedef int | ABT_bool |
| Boolean type. More...
|
|
typedef enum ABT_info_query_kind | ABT_info_query_kind |
| Query type for ABT_info_query_config() . More...
|
|
typedef struct ABT_tool_context_opaque * | ABT_tool_context |
| Tool context handle type. More...
|
|
typedef enum ABT_tool_query_kind | ABT_tool_query_kind |
| Tool query type. More...
|
|
typedef enum ABT_exec_entity_type | ABT_exec_entity_type |
| Execution entity type. More...
|
|
typedef enum ABT_sync_event_type | ABT_sync_event_type |
| Synchronization event type. More...
|
|
typedef int(* | ABT_sched_init_fn) (ABT_sched, ABT_sched_config) |
|
typedef void(* | ABT_sched_run_fn) (ABT_sched) |
|
typedef int(* | ABT_sched_free_fn) (ABT_sched) |
|
typedef ABT_pool(* | ABT_sched_get_migr_pool_fn) (ABT_sched) |
|
typedef uint64_t | ABT_pool_context |
| A pool context value. More...
|
|
typedef ABT_unit(* | ABT_pool_user_create_unit_fn) (ABT_pool, ABT_thread) |
| Function that creates an ABT_unit handle that is associated with an ABT_thread handle. More...
|
|
typedef void(* | ABT_pool_user_free_unit_fn) (ABT_pool, ABT_unit) |
| Function that frees an ABT_unit handle. More...
|
|
typedef ABT_bool(* | ABT_pool_user_is_empty_fn) (ABT_pool) |
| Function that returns if a pool is empty. More...
|
|
typedef ABT_thread(* | ABT_pool_user_pop_fn) (ABT_pool, ABT_pool_context) |
| Function that pops a work unit from a pool. More...
|
|
typedef void(* | ABT_pool_user_push_fn) (ABT_pool, ABT_unit, ABT_pool_context) |
| Function that pushes a work unit to a pool. More...
|
|
typedef int(* | ABT_pool_user_init_fn) (ABT_pool, ABT_pool_config) |
| Function that creates a pool. More...
|
|
typedef void(* | ABT_pool_user_free_fn) (ABT_pool) |
| Function that frees a pool. More...
|
|
typedef size_t(* | ABT_pool_user_get_size_fn) (ABT_pool) |
| Function that returns the number of work units in a pool. More...
|
|
typedef ABT_thread(* | ABT_pool_user_pop_wait_fn) (ABT_pool, double, ABT_pool_context) |
| Function that pops a work unit from a pool with wait. More...
|
|
typedef void(* | ABT_pool_user_pop_many_fn) (ABT_pool, ABT_thread *, size_t, size_t *, ABT_pool_context) |
| Function that pops work units from a pool. More...
|
|
typedef void(* | ABT_pool_user_push_many_fn) (ABT_pool, const ABT_unit *, size_t, ABT_pool_context) |
| Function that pushes work units to a pool. More...
|
|
typedef void(* | ABT_pool_user_print_all_fn) (ABT_pool, void *arg, void(*) (void *, ABT_thread)) |
| Function that applies a user-given function to all work units in a pool. More...
|
|
typedef ABT_unit_type(* | ABT_unit_get_type_fn) (ABT_unit) |
|
typedef ABT_thread(* | ABT_unit_get_thread_fn) (ABT_unit) |
|
typedef ABT_task(* | ABT_unit_get_task_fn) (ABT_unit) |
|
typedef ABT_bool(* | ABT_unit_is_in_pool_fn) (ABT_unit) |
|
typedef ABT_unit(* | ABT_unit_create_from_thread_fn) (ABT_thread) |
|
typedef ABT_unit(* | ABT_unit_create_from_task_fn) (ABT_task) |
|
typedef void(* | ABT_unit_free_fn) (ABT_unit *) |
|
typedef int(* | ABT_pool_init_fn) (ABT_pool, ABT_pool_config) |
|
typedef size_t(* | ABT_pool_get_size_fn) (ABT_pool) |
|
typedef void(* | ABT_pool_push_fn) (ABT_pool, ABT_unit) |
|
typedef ABT_unit(* | ABT_pool_pop_fn) (ABT_pool) |
|
typedef ABT_unit(* | ABT_pool_pop_wait_fn) (ABT_pool, double) |
|
typedef ABT_unit(* | ABT_pool_pop_timedwait_fn) (ABT_pool, double) |
|
typedef int(* | ABT_pool_remove_fn) (ABT_pool, ABT_unit) |
|
typedef int(* | ABT_pool_free_fn) (ABT_pool) |
|
typedef int(* | ABT_pool_print_all_fn) (ABT_pool, void *arg, void(*) (void *, ABT_unit)) |
|
typedef struct ABT_pool_def | ABT_pool_def |
|
typedef void(* | ABT_tool_thread_callback_fn) (ABT_thread, ABT_xstream, uint64_t event, ABT_tool_context context, void *user_arg) |
|
typedef void(* | ABT_tool_task_callback_fn) (ABT_task, ABT_xstream, uint64_t event, ABT_tool_context context, void *user_arg) |
|
|
int | ABT_init (int argc, char **argv) ABT_API_PUBLIC |
| Initialize the Argobots execution environment. More...
|
|
int | ABT_finalize (void) ABT_API_PUBLIC |
| Finalize the Argobots execution environment. More...
|
|
int | ABT_initialized (void) ABT_API_PUBLIC |
| Check if the Argobots execution environment has been initialized. More...
|
|
int | ABT_xstream_create (ABT_sched sched, ABT_xstream *newxstream) ABT_API_PUBLIC |
| Create a new execution stream. More...
|
|
int | ABT_xstream_create_basic (ABT_sched_predef predef, int num_pools, ABT_pool *pools, ABT_sched_config config, ABT_xstream *newxstream) ABT_API_PUBLIC |
| Create a new execution stream with a predefined scheduler. More...
|
|
int | ABT_xstream_create_with_rank (ABT_sched sched, int rank, ABT_xstream *newxstream) ABT_API_PUBLIC |
| Create a new execution stream with a specific rank. More...
|
|
int | ABT_xstream_free (ABT_xstream *xstream) ABT_API_PUBLIC |
| Free an execution stream. More...
|
|
int | ABT_xstream_join (ABT_xstream xstream) ABT_API_PUBLIC |
| Wait for an execution stream to terminate. More...
|
|
int | ABT_xstream_revive (ABT_xstream xstream) ABT_API_PUBLIC |
| Revive a terminated execution stream. More...
|
|
int | ABT_xstream_exit (void) ABT_API_PUBLIC |
| Terminate an execution stream that is running the calling ULT. More...
|
|
int | ABT_xstream_cancel (ABT_xstream xstream) ABT_API_PUBLIC |
| Send a cancellation request to an execution stream. More...
|
|
int | ABT_xstream_self (ABT_xstream *xstream) ABT_API_PUBLIC |
| Get an execution stream that is running the calling work unit. More...
|
|
int | ABT_xstream_self_rank (int *rank) ABT_API_PUBLIC |
| Return a rank of an execution stream associated with a caller. More...
|
|
int | ABT_xstream_set_rank (ABT_xstream xstream, int rank) ABT_API_PUBLIC |
| Set a rank for an execution stream. More...
|
|
int | ABT_xstream_get_rank (ABT_xstream xstream, int *rank) ABT_API_PUBLIC |
| Retrieve a rank of an execution stream. More...
|
|
int | ABT_xstream_set_main_sched (ABT_xstream xstream, ABT_sched sched) ABT_API_PUBLIC |
| Set the main scheduler of an execution stream. More...
|
|
int | ABT_xstream_set_main_sched_basic (ABT_xstream xstream, ABT_sched_predef predef, int num_pools, ABT_pool *pools) ABT_API_PUBLIC |
| Set the main scheduler of an execution stream to a predefined scheduler. More...
|
|
int | ABT_xstream_get_main_sched (ABT_xstream xstream, ABT_sched *sched) ABT_API_PUBLIC |
| Retrieve the main scheduler of an execution stream. More...
|
|
int | ABT_xstream_get_main_pools (ABT_xstream xstream, int max_pools, ABT_pool *pools) ABT_API_PUBLIC |
| Get pools associated with the main scheduler of an execution stream. More...
|
|
int | ABT_xstream_get_state (ABT_xstream xstream, ABT_xstream_state *state) ABT_API_PUBLIC |
| Get a state of an execution stream. More...
|
|
int | ABT_xstream_equal (ABT_xstream xstream1, ABT_xstream xstream2, ABT_bool *result) ABT_API_PUBLIC |
| Compare two execution stream handles for equality. More...
|
|
int | ABT_xstream_get_num (int *num_xstreams) ABT_API_PUBLIC |
| Get the number of current existing execution streams. More...
|
|
int | ABT_xstream_is_primary (ABT_xstream xstream, ABT_bool *is_primary) ABT_API_PUBLIC |
| Check if the target execution stream is primary. More...
|
|
int | ABT_xstream_run_unit (ABT_unit unit, ABT_pool pool) ABT_API_PUBLIC |
| Execute a work unit. More...
|
|
int | ABT_xstream_check_events (ABT_sched sched) ABT_API_PUBLIC |
| Process events associated with a scheduler. More...
|
|
int | ABT_xstream_set_cpubind (ABT_xstream xstream, int cpuid) ABT_API_PUBLIC |
| Bind an execution stream to a target CPU. More...
|
|
int | ABT_xstream_get_cpubind (ABT_xstream xstream, int *cpuid) ABT_API_PUBLIC |
| Get CPU ID of a CPU to which an execution stream is bound. More...
|
|
int | ABT_xstream_set_affinity (ABT_xstream xstream, int num_cpuids, int *cpuids) ABT_API_PUBLIC |
| Bind an execution stream to target CPUs. More...
|
|
int | ABT_xstream_get_affinity (ABT_xstream xstream, int max_cpuids, int *cpuids, int *num_cpuids) ABT_API_PUBLIC |
| Get CPU IDs of CPUs to which an execution stream is bound. More...
|
|
int | ABT_xstream_barrier_create (uint32_t num_waiters, ABT_xstream_barrier *newbarrier) ABT_API_PUBLIC |
| Create a new execution-stream barrier. More...
|
|
int | ABT_xstream_barrier_free (ABT_xstream_barrier *barrier) ABT_API_PUBLIC |
| Free an execution-stream barrier. More...
|
|
int | ABT_xstream_barrier_wait (ABT_xstream_barrier barrier) ABT_API_PUBLIC |
| Wait on an execution-stream barrier. More...
|
|
int | ABT_sched_create (ABT_sched_def *def, int num_pools, ABT_pool *pools, ABT_sched_config config, ABT_sched *newsched) ABT_API_PUBLIC |
| Create a new scheduler with a scheduler definition. More...
|
|
int | ABT_sched_create_basic (ABT_sched_predef predef, int num_pools, ABT_pool *pools, ABT_sched_config config, ABT_sched *newsched) ABT_API_PUBLIC |
| Create a new scheduler with a predefined scheduler type. More...
|
|
int | ABT_sched_free (ABT_sched *sched) ABT_API_PUBLIC |
| Free a scheduler. More...
|
|
int | ABT_sched_set_data (ABT_sched sched, void *data) ABT_API_PUBLIC |
| Associate a user value with a scheduler. More...
|
|
int | ABT_sched_get_data (ABT_sched sched, void **data) ABT_API_PUBLIC |
| Retrieve a user value associated with a scheduler. More...
|
|
int | ABT_sched_get_num_pools (ABT_sched sched, int *num_pools) ABT_API_PUBLIC |
| Obtain the number of pools associated with a scheduler. More...
|
|
int | ABT_sched_get_pools (ABT_sched sched, int max_pools, int idx, ABT_pool *pools) ABT_API_PUBLIC |
| Retrieve pools associated with a scheduler. More...
|
|
int | ABT_sched_get_size (ABT_sched sched, size_t *size) ABT_API_PUBLIC |
| Obtain the sum of sizes of pools associated with a scheduler. More...
|
|
int | ABT_sched_get_total_size (ABT_sched sched, size_t *size) ABT_API_PUBLIC |
| Obtain the sum of the total sizes of pools associated with a scheduler. More...
|
|
int | ABT_sched_finish (ABT_sched sched) ABT_API_PUBLIC |
| Request a scheduler to finish after its pools get empty. More...
|
|
int | ABT_sched_exit (ABT_sched sched) ABT_API_PUBLIC |
| Request a scheduler to finish. More...
|
|
int | ABT_sched_has_to_stop (ABT_sched sched, ABT_bool *stop) ABT_API_PUBLIC |
| Check if a scheduler needs to stop. More...
|
|
int | ABT_sched_config_create (ABT_sched_config *config,...) ABT_API_PUBLIC |
| Create a new scheduler configuration. More...
|
|
int | ABT_sched_config_read (ABT_sched_config config, int num_vars,...) ABT_API_PUBLIC |
| Retrieve values from a scheduler configuration. More...
|
|
int | ABT_sched_config_free (ABT_sched_config *config) ABT_API_PUBLIC |
| Free a scheduler configuration. More...
|
|
int | ABT_sched_config_set (ABT_sched_config config, int idx, ABT_sched_config_type type, const void *val) ABT_API_PUBLIC |
| Register a value to a scheduler configuration. More...
|
|
int | ABT_sched_config_get (ABT_sched_config config, int idx, ABT_sched_config_type *p_type, void *val) ABT_API_PUBLIC |
| Retrieve a value from a scheduler configuration. More...
|
|
int | ABT_pool_create (ABT_pool_user_def def, ABT_pool_config config, ABT_pool *newpool) ABT_API_PUBLIC |
| Create a new pool. More...
|
|
int | ABT_pool_create_basic (ABT_pool_kind kind, ABT_pool_access access, ABT_bool automatic, ABT_pool *newpool) ABT_API_PUBLIC |
| Create a new pool from a predefined type. More...
|
|
int | ABT_pool_free (ABT_pool *pool) ABT_API_PUBLIC |
| Free a pool. More...
|
|
int | ABT_pool_get_access (ABT_pool pool, ABT_pool_access *access) ABT_API_PUBLIC |
| Get an access type of a pool. More...
|
|
int | ABT_pool_is_empty (ABT_pool pool, ABT_bool *is_empty) ABT_API_PUBLIC |
| Check if a pool is empty. More...
|
|
int | ABT_pool_get_size (ABT_pool pool, size_t *size) ABT_API_PUBLIC |
| Get the size of a pool. More...
|
|
int | ABT_pool_get_total_size (ABT_pool pool, size_t *size) ABT_API_PUBLIC |
| Get the total size of a pool. More...
|
|
int | ABT_pool_pop_thread (ABT_pool pool, ABT_thread *thread) ABT_API_PUBLIC |
| Pop a work unit from a pool. More...
|
|
int | ABT_pool_pop_thread_ex (ABT_pool pool, ABT_thread *thread, ABT_pool_context pool_ctx) ABT_API_PUBLIC |
| Pop a work unit from a pool. More...
|
|
int | ABT_pool_pop_threads (ABT_pool pool, ABT_thread *threads, size_t len, size_t *num) ABT_API_PUBLIC |
| Pop work units from a pool. More...
|
|
int | ABT_pool_pop_threads_ex (ABT_pool pool, ABT_thread *threads, size_t len, size_t *num, ABT_pool_context pool_ctx) ABT_API_PUBLIC |
| Pop work units from a pool. More...
|
|
int | ABT_pool_push_thread (ABT_pool pool, ABT_thread thread) ABT_API_PUBLIC |
| Push a work unit to a pool. More...
|
|
int | ABT_pool_push_thread_ex (ABT_pool pool, ABT_thread thread, ABT_pool_context pool_ctx) ABT_API_PUBLIC |
| Push a work unit to a pool. More...
|
|
int | ABT_pool_push_threads (ABT_pool pool, const ABT_thread *threads, size_t num) ABT_API_PUBLIC |
| Push work units to a pool. More...
|
|
int | ABT_pool_push_threads_ex (ABT_pool pool, const ABT_thread *threads, size_t num, ABT_pool_context pool_ctx) ABT_API_PUBLIC |
| Push work units to a pool. More...
|
|
int | ABT_pool_pop_wait_thread (ABT_pool pool, ABT_thread *thread, double time_secs) ABT_API_PUBLIC |
| Pop a work unit from a pool. More...
|
|
int | ABT_pool_pop_wait_thread_ex (ABT_pool pool, ABT_thread *thread, double time_secs, ABT_pool_context pool_ctx) ABT_API_PUBLIC |
| Pop a work unit from a pool. More...
|
|
int | ABT_pool_print_all_threads (ABT_pool pool, void *arg, void(*print_fn)(void *arg, ABT_thread)) ABT_API_PUBLIC |
| Apply a print function to every work unit in a pool. More...
|
|
int | ABT_pool_set_data (ABT_pool pool, void *data) ABT_API_PUBLIC |
| Set user data in a pool. More...
|
|
int | ABT_pool_get_data (ABT_pool pool, void **data) ABT_API_PUBLIC |
| Retrieve user data from a pool. More...
|
|
int | ABT_pool_add_sched (ABT_pool pool, ABT_sched sched) ABT_API_PUBLIC |
| Create a new work unit associated with a scheduler and push it to a pool. More...
|
|
int | ABT_pool_get_id (ABT_pool pool, int *id) ABT_API_PUBLIC |
| Get ID of a pool. More...
|
|
int | ABT_pool_pop (ABT_pool pool, ABT_unit *unit) ABT_API_PUBLIC |
| Pop a work unit from a pool. More...
|
|
int | ABT_pool_pop_wait (ABT_pool pool, ABT_unit *unit, double time_secs) ABT_API_PUBLIC |
| Pop a unit from a pool with wait. More...
|
|
int | ABT_pool_pop_timedwait (ABT_pool pool, ABT_unit *unit, double abstime_secs) ABT_DEPRECATED ABT_API_PUBLIC |
| Pop a unit from a pool with timed wait. More...
|
|
int | ABT_pool_remove (ABT_pool pool, ABT_unit unit) ABT_API_PUBLIC |
| Remove a specified work unit from a pool. More...
|
|
int | ABT_pool_push (ABT_pool pool, ABT_unit unit) ABT_API_PUBLIC |
| Push a unit to a pool. More...
|
|
int | ABT_pool_print_all (ABT_pool pool, void *arg, void(*print_fn)(void *arg, ABT_unit)) ABT_API_PUBLIC |
|
int | ABT_pool_config_create (ABT_pool_config *config) ABT_API_PUBLIC |
| Create a new pool configuration. More...
|
|
int | ABT_pool_config_free (ABT_pool_config *config) ABT_API_PUBLIC |
| Free a pool configuration. More...
|
|
int | ABT_pool_config_set (ABT_pool_config config, int key, ABT_pool_config_type type, const void *val) ABT_API_PUBLIC |
| Register a value to a pool configuration. More...
|
|
int | ABT_pool_config_get (ABT_pool_config config, int key, ABT_pool_config_type *p_type, void *val) ABT_API_PUBLIC |
| Retrieve a value from a pool configuration. More...
|
|
int | ABT_pool_user_def_create (ABT_pool_user_create_unit_fn p_create_unit, ABT_pool_user_free_unit_fn p_free_unit, ABT_pool_user_is_empty_fn p_is_empty, ABT_pool_user_pop_fn p_pop, ABT_pool_user_push_fn p_push, ABT_pool_user_def *newdef) ABT_API_PUBLIC |
| Create a new pool definition. More...
|
|
int | ABT_pool_user_def_free (ABT_pool_user_def *def) ABT_API_PUBLIC |
| Free a pool definition. More...
|
|
int | ABT_pool_user_def_set_init (ABT_pool_user_def def, ABT_pool_user_init_fn p_init) ABT_API_PUBLIC |
| Register a pool initialization function to a pool definition. More...
|
|
int | ABT_pool_user_def_set_free (ABT_pool_user_def def, ABT_pool_user_free_fn p_free) ABT_API_PUBLIC |
| Register a pool finalization function to a pool definition. More...
|
|
int | ABT_pool_user_def_set_get_size (ABT_pool_user_def def, ABT_pool_user_get_size_fn p_get_size) ABT_API_PUBLIC |
| Register a size inquiry function to a pool definition. More...
|
|
int | ABT_pool_user_def_set_pop_wait (ABT_pool_user_def def, ABT_pool_user_pop_wait_fn p_pop_wait) ABT_API_PUBLIC |
| Register a pop-wait function to a pool definition. More...
|
|
int | ABT_pool_user_def_set_pop_many (ABT_pool_user_def def, ABT_pool_user_pop_many_fn p_pop_many) ABT_API_PUBLIC |
| Register a pop-many function to a pool definition. More...
|
|
int | ABT_pool_user_def_set_push_many (ABT_pool_user_def def, ABT_pool_user_push_many_fn p_push_many) ABT_API_PUBLIC |
| Register a push-many function to a pool definition. More...
|
|
int | ABT_pool_user_def_set_print_all (ABT_pool_user_def def, ABT_pool_user_print_all_fn p_print_all) ABT_API_PUBLIC |
| Register a print-all function to a pool definition. More...
|
|
int | ABT_unit_get_thread (ABT_unit unit, ABT_thread *thread) ABT_API_PUBLIC |
| Get a thread handle of the target work unit. More...
|
|
int | ABT_unit_set_associated_pool (ABT_unit unit, ABT_pool pool) ABT_API_PUBLIC |
| No operation. More...
|
|
int | ABT_thread_create (ABT_pool pool, void(*thread_func)(void *), void *arg, ABT_thread_attr attr, ABT_thread *newthread) ABT_API_PUBLIC |
| Create a new ULT. More...
|
|
int | ABT_thread_create_to (ABT_pool pool, void(*thread_func)(void *), void *arg, ABT_thread_attr attr, ABT_thread *newthread) ABT_API_PUBLIC |
| Create a new ULT and yield to it. More...
|
|
int | ABT_thread_create_on_xstream (ABT_xstream xstream, void(*thread_func)(void *), void *arg, ABT_thread_attr attr, ABT_thread *newthread) ABT_API_PUBLIC |
| Create a new ULT associated with an execution stream. More...
|
|
int | ABT_thread_create_many (int num_threads, ABT_pool *pool_list, void(**thread_func_list)(void *), void **arg_list, ABT_thread_attr attr, ABT_thread *newthread_list) ABT_API_PUBLIC |
| Create a set of new ULTs. More...
|
|
int | ABT_thread_revive (ABT_pool pool, void(*thread_func)(void *), void *arg, ABT_thread *thread) ABT_API_PUBLIC |
| Revive a terminated work unit. More...
|
|
int | ABT_thread_revive_to (ABT_pool pool, void(*thread_func)(void *), void *arg, ABT_thread *thread) ABT_API_PUBLIC |
| Revive a terminated ULT and yield to it. More...
|
|
int | ABT_thread_free (ABT_thread *thread) ABT_API_PUBLIC |
| Free a work unit. More...
|
|
int | ABT_thread_free_many (int num_threads, ABT_thread *thread_list) ABT_API_PUBLIC |
| Free a set of work units. More...
|
|
int | ABT_thread_join (ABT_thread thread) ABT_API_PUBLIC |
| Wait for a work unit to terminate. More...
|
|
int | ABT_thread_join_many (int num_threads, ABT_thread *thread_list) ABT_API_PUBLIC |
| Wait for a set of work units to terminate. More...
|
|
int | ABT_thread_exit (void) ABT_API_PUBLIC |
| Terminate a calling ULT. More...
|
|
int | ABT_thread_cancel (ABT_thread thread) ABT_API_PUBLIC |
| Send a cancellation request to a work unit. More...
|
|
int | ABT_thread_self (ABT_thread *thread) ABT_API_PUBLIC |
| Get the calling work unit. More...
|
|
int | ABT_thread_self_id (ABT_unit_id *id) ABT_API_PUBLIC |
| Get ID of the calling work unit. More...
|
|
int | ABT_thread_get_last_xstream (ABT_thread thread, ABT_xstream *xstream) ABT_API_PUBLIC |
| Get an execution stream associated with a work unit. More...
|
|
int | ABT_thread_get_state (ABT_thread thread, ABT_thread_state *state) ABT_API_PUBLIC |
| Get a state of a work unit. More...
|
|
int | ABT_thread_get_last_pool (ABT_thread thread, ABT_pool *pool) ABT_API_PUBLIC |
| Get the last pool of a work unit. More...
|
|
int | ABT_thread_get_last_pool_id (ABT_thread thread, int *id) ABT_API_PUBLIC |
| Get the last pool's ID of a work unit. More...
|
|
int | ABT_thread_get_unit (ABT_thread thread, ABT_unit *unit) ABT_API_PUBLIC |
| Get a unit handle of the target work unit. More...
|
|
int | ABT_thread_set_associated_pool (ABT_thread thread, ABT_pool pool) ABT_API_PUBLIC |
| Set an associated pool for the target work unit. More...
|
|
int | ABT_thread_yield_to (ABT_thread thread) ABT_API_PUBLIC |
| Yield the calling ULT to another ULT. More...
|
|
int | ABT_thread_yield (void) ABT_API_PUBLIC |
| Yield the calling ULT to its parent ULT. More...
|
|
int | ABT_thread_resume (ABT_thread thread) ABT_API_PUBLIC |
| Resume a ULT. More...
|
|
int | ABT_thread_migrate_to_xstream (ABT_thread thread, ABT_xstream xstream) ABT_API_PUBLIC |
| Request a migration of a work unit to a specific execution stream. More...
|
|
int | ABT_thread_migrate_to_sched (ABT_thread thread, ABT_sched sched) ABT_API_PUBLIC |
| Request a migration of a work unit to a specific scheduler. More...
|
|
int | ABT_thread_migrate_to_pool (ABT_thread thread, ABT_pool pool) ABT_API_PUBLIC |
| Request a migration of a work unit to a specific pool. More...
|
|
int | ABT_thread_migrate (ABT_thread thread) ABT_API_PUBLIC |
| Request a migration of a work unit to any available execution stream. More...
|
|
int | ABT_thread_set_callback (ABT_thread thread, void(*cb_func)(ABT_thread thread, void *cb_arg), void *cb_arg) ABT_API_PUBLIC |
| Register a callback function in a work unit. More...
|
|
int | ABT_thread_set_migratable (ABT_thread thread, ABT_bool migratable) ABT_API_PUBLIC |
| Set the migratability in a work unit. More...
|
|
int | ABT_thread_is_migratable (ABT_thread thread, ABT_bool *is_migratable) ABT_API_PUBLIC |
| Get the migratability of a work unit. More...
|
|
int | ABT_thread_is_primary (ABT_thread thread, ABT_bool *is_primary) ABT_API_PUBLIC |
| Check if a work unit is the primary ULT. More...
|
|
int | ABT_thread_is_unnamed (ABT_thread thread, ABT_bool *is_unnamed) ABT_API_PUBLIC |
| Check if a work unit is unnamed. More...
|
|
int | ABT_thread_equal (ABT_thread thread1, ABT_thread thread2, ABT_bool *result) ABT_API_PUBLIC |
| Compare two work unit handles for equality. More...
|
|
int | ABT_thread_get_stacksize (ABT_thread thread, size_t *stacksize) ABT_API_PUBLIC |
| Get a stack size of a work unit. More...
|
|
int | ABT_thread_get_id (ABT_thread thread, ABT_unit_id *thread_id) ABT_API_PUBLIC |
| Get ID of a work unit. More...
|
|
int | ABT_thread_set_arg (ABT_thread thread, void *arg) ABT_API_PUBLIC |
| Set an argument for a work-unit function of a work unit. More...
|
|
int | ABT_thread_get_arg (ABT_thread thread, void **arg) ABT_API_PUBLIC |
| Retrieve an argument for a work-unit function of a work unit. More...
|
|
int | ABT_thread_get_thread_func (ABT_thread thread, void(**thread_func)(void *)) ABT_API_PUBLIC |
| Retrieve a work-unit function of a work unit. More...
|
|
int | ABT_thread_set_specific (ABT_thread thread, ABT_key key, void *value) ABT_API_PUBLIC |
| Set a value with a work-unit-specific data key in a work unit. More...
|
|
int | ABT_thread_get_specific (ABT_thread thread, ABT_key key, void **value) ABT_API_PUBLIC |
| Get a value associated with a work-unit-specific data key in a work unit. More...
|
|
int | ABT_thread_get_attr (ABT_thread thread, ABT_thread_attr *attr) ABT_API_PUBLIC |
| Get attributes of a work unit. More...
|
|
int | ABT_thread_attr_create (ABT_thread_attr *newattr) ABT_API_PUBLIC |
| Create a new ULT attribute. More...
|
|
int | ABT_thread_attr_free (ABT_thread_attr *attr) ABT_API_PUBLIC |
| Free a ULT attribute. More...
|
|
int | ABT_thread_attr_set_stack (ABT_thread_attr attr, void *stackaddr, size_t stacksize) ABT_API_PUBLIC |
| Set stack attributes in a ULT attribute. More...
|
|
int | ABT_thread_attr_get_stack (ABT_thread_attr attr, void **stackaddr, size_t *stacksize) ABT_API_PUBLIC |
| Get stack attributes from a ULT attribute. More...
|
|
int | ABT_thread_attr_set_stacksize (ABT_thread_attr attr, size_t stacksize) ABT_API_PUBLIC |
| Set stack size in a ULT attribute. More...
|
|
int | ABT_thread_attr_get_stacksize (ABT_thread_attr attr, size_t *stacksize) ABT_API_PUBLIC |
| Get the stack size from a ULT attribute. More...
|
|
int | ABT_thread_attr_set_callback (ABT_thread_attr attr, void(*cb_func)(ABT_thread thread, void *cb_arg), void *cb_arg) ABT_API_PUBLIC |
| Set a callback function and its argument in a ULT attribute. More...
|
|
int | ABT_thread_attr_set_migratable (ABT_thread_attr attr, ABT_bool is_migratable) ABT_API_PUBLIC |
| Set the ULT's migratability in a ULT attribute. More...
|
|
int | ABT_task_create (ABT_pool pool, void(*task_func)(void *), void *arg, ABT_task *newtask) ABT_API_PUBLIC |
| Create a new tasklet. More...
|
|
int | ABT_task_create_on_xstream (ABT_xstream xstream, void(*task_func)(void *), void *arg, ABT_task *newtask) ABT_API_PUBLIC |
| Create a new tasklet associated with an execution stream. More...
|
|
int | ABT_task_revive (ABT_pool pool, void(*task_func)(void *), void *arg, ABT_task *task) ABT_API_PUBLIC |
| Revive a terminated work unit. More...
|
|
int | ABT_task_free (ABT_task *task) ABT_API_PUBLIC |
| Free a work unit. More...
|
|
int | ABT_task_join (ABT_task task) ABT_API_PUBLIC |
| Wait for a work unit to terminate. More...
|
|
int | ABT_task_cancel (ABT_task task) ABT_API_PUBLIC |
| Send a termination request to a work unit. More...
|
|
int | ABT_task_self (ABT_task *task) ABT_API_PUBLIC |
| Get the calling work unit. More...
|
|
int | ABT_task_self_id (uint64_t *id) ABT_API_PUBLIC |
| Get ID of the calling work unit. More...
|
|
int | ABT_task_get_xstream (ABT_task task, ABT_xstream *xstream) ABT_API_PUBLIC |
| Get an execution stream associated with a work unit. More...
|
|
int | ABT_task_get_state (ABT_task task, ABT_task_state *state) ABT_API_PUBLIC |
| Get a state of a tasklet. More...
|
|
int | ABT_task_get_last_pool (ABT_task task, ABT_pool *pool) ABT_API_PUBLIC |
| Get the last pool of a work unit. More...
|
|
int | ABT_task_get_last_pool_id (ABT_task task, int *id) ABT_API_PUBLIC |
| Get the last pool's ID of a work unit. More...
|
|
int | ABT_task_set_migratable (ABT_task task, ABT_bool flag) ABT_API_PUBLIC |
| Set the migratability in a work unit. More...
|
|
int | ABT_task_is_migratable (ABT_task task, ABT_bool *flag) ABT_API_PUBLIC |
| Get the migratability of a work unit. More...
|
|
int | ABT_task_equal (ABT_task task1, ABT_task task2, ABT_bool *result) ABT_API_PUBLIC |
| Compare two work-unit handles for equality. More...
|
|
int | ABT_task_get_id (ABT_task task, uint64_t *task_id) ABT_API_PUBLIC |
| Get ID of a work unit. More...
|
|
int | ABT_task_get_arg (ABT_task task, void **arg) ABT_API_PUBLIC |
| Retrieve an argument for a work-unit function of a work unit. More...
|
|
int | ABT_self_get_xstream (ABT_xstream *xstream) ABT_API_PUBLIC |
| Get an execution stream that is running the calling work unit. More...
|
|
int | ABT_self_get_xstream_rank (int *rank) ABT_API_PUBLIC |
| Return a rank of an execution stream that is running the calling work unit. More...
|
|
int | ABT_self_get_thread (ABT_thread *thread) ABT_API_PUBLIC |
| Get the calling work unit. More...
|
|
int | ABT_self_get_thread_id (ABT_unit_id *id) ABT_API_PUBLIC |
| Get ID of the calling work unit. More...
|
|
int | ABT_self_set_specific (ABT_key key, void *value) ABT_API_PUBLIC |
| Associate a value with a work-unit-specific data key in the calling work unit. More...
|
|
int | ABT_self_get_specific (ABT_key key, void **value) ABT_API_PUBLIC |
| Get a value associated with a work-unit-specific data key in the calling work unit. More...
|
|
int | ABT_self_get_type (ABT_unit_type *type) ABT_API_PUBLIC |
| Obtain a type of the caller. More...
|
|
int | ABT_self_is_primary (ABT_bool *is_primary) ABT_API_PUBLIC |
| Check if the caller is the primary ULT. More...
|
|
int | ABT_self_on_primary_xstream (ABT_bool *on_primary) ABT_API_PUBLIC |
| Check if the caller is running on the primary execution stream. More...
|
|
int | ABT_self_is_unnamed (ABT_bool *is_unnamed) ABT_API_PUBLIC |
| Check if the calling work unit is unnamed. More...
|
|
int | ABT_self_get_last_pool (ABT_pool *pool) ABT_API_PUBLIC |
| Get the last pool of the calling work unit. More...
|
|
int | ABT_self_get_last_pool_id (int *pool_id) ABT_API_PUBLIC |
| Get ID of the last pool of the calling work unit. More...
|
|
int | ABT_self_set_associated_pool (ABT_pool pool) ABT_API_PUBLIC |
| Set an associated pool for the calling work unit. More...
|
|
int | ABT_self_get_unit (ABT_unit *unit) ABT_API_PUBLIC |
| Get a unit handle of the calling work unit. More...
|
|
int | ABT_self_yield (void) ABT_API_PUBLIC |
| Yield the calling ULT to its parent ULT. More...
|
|
int | ABT_self_yield_to (ABT_thread thread) ABT_API_PUBLIC |
| Yield the calling ULT to another ULT. More...
|
|
int | ABT_self_resume_yield_to (ABT_thread thread) ABT_API_PUBLIC |
| Yield the calling ULT to another suspended ULT. More...
|
|
int | ABT_self_suspend (void) ABT_API_PUBLIC |
| Suspend the calling ULT. More...
|
|
int | ABT_self_suspend_to (ABT_thread thread) ABT_API_PUBLIC |
| Suspend the calling ULT and jump to another ULT. More...
|
|
int | ABT_self_resume_suspend_to (ABT_thread thread) ABT_API_PUBLIC |
| Suspend the calling ULT and jump to another suspended ULT. More...
|
|
int | ABT_self_exit (void) ABT_API_PUBLIC |
| Terminate a calling ULT. More...
|
|
int | ABT_self_exit_to (ABT_thread thread) ABT_API_PUBLIC |
| Terminate the calling ULT and jump to another ULT. More...
|
|
int | ABT_self_resume_exit_to (ABT_thread thread) ABT_API_PUBLIC |
| Terminate the calling ULT and jump to another suspended ULT. More...
|
|
int | ABT_self_schedule (ABT_thread thread, ABT_pool pool) ABT_API_PUBLIC |
| Execute a work unit on the calling ULT. More...
|
|
int | ABT_self_set_arg (void *arg) ABT_API_PUBLIC |
| Set an argument for a work-unit function of the calling work unit. More...
|
|
int | ABT_self_get_arg (void **arg) ABT_API_PUBLIC |
| Retrieve an argument for a work-unit function of the calling work unit. More...
|
|
int | ABT_self_get_thread_func (void(**thread_func)(void *)) ABT_API_PUBLIC |
| Retrieve a work-unit function of the calling work unit. More...
|
|
int | ABT_key_create (void(*destructor)(void *value), ABT_key *newkey) ABT_API_PUBLIC |
| Create a new work-unit-specific data key. More...
|
|
int | ABT_key_free (ABT_key *key) ABT_API_PUBLIC |
| Free a work-unit-specific data key. More...
|
|
int | ABT_key_set (ABT_key key, void *value) ABT_API_PUBLIC |
| Associate a value with a work-unit-specific data key in the calling work unit. More...
|
|
int | ABT_key_get (ABT_key key, void **value) ABT_API_PUBLIC |
| Get a value associated with a work-unit-specific data key in the calling work unit. More...
|
|
int | ABT_mutex_create (ABT_mutex *newmutex) ABT_API_PUBLIC |
| Create a new mutex. More...
|
|
int | ABT_mutex_create_with_attr (ABT_mutex_attr attr, ABT_mutex *newmutex) ABT_API_PUBLIC |
| Create a new mutex with mutex attributes. More...
|
|
int | ABT_mutex_free (ABT_mutex *mutex) ABT_API_PUBLIC |
| Free a mutex. More...
|
|
int | ABT_mutex_lock (ABT_mutex mutex) ABT_API_PUBLIC |
| Lock a mutex. More...
|
|
int | ABT_mutex_lock_high (ABT_mutex mutex) ABT_API_PUBLIC |
| Lock a mutex with high priority. More...
|
|
int | ABT_mutex_lock_low (ABT_mutex mutex) ABT_API_PUBLIC |
| Lock a mutex with low priority. More...
|
|
int | ABT_mutex_trylock (ABT_mutex mutex) ABT_API_PUBLIC |
| Attempt to lock a mutex. More...
|
|
int | ABT_mutex_spinlock (ABT_mutex mutex) ABT_API_PUBLIC |
| Lock a mutex in a busy-wait form. More...
|
|
int | ABT_mutex_unlock (ABT_mutex mutex) ABT_API_PUBLIC |
| Unlock a mutex. More...
|
|
int | ABT_mutex_unlock_se (ABT_mutex mutex) ABT_API_PUBLIC |
| Unlock a mutex and try to hand it over a waiter associated with the same execution stream. More...
|
|
int | ABT_mutex_unlock_de (ABT_mutex mutex) ABT_API_PUBLIC |
| Unlock a mutex and try to hand it over a waiter associated with an execution stream that is different from that of the caller. More...
|
|
int | ABT_mutex_equal (ABT_mutex mutex1, ABT_mutex mutex2, ABT_bool *result) ABT_API_PUBLIC |
| Compare two mutex handles for equality. More...
|
|
int | ABT_mutex_get_attr (ABT_mutex mutex, ABT_mutex_attr *attr) ABT_API_PUBLIC |
| Get attributes of a mutex. More...
|
|
int | ABT_mutex_attr_create (ABT_mutex_attr *newattr) ABT_API_PUBLIC |
| Create a new mutex attribute. More...
|
|
int | ABT_mutex_attr_free (ABT_mutex_attr *attr) ABT_API_PUBLIC |
| Free a mutex attribute. More...
|
|
int | ABT_mutex_attr_set_recursive (ABT_mutex_attr attr, ABT_bool recursive) ABT_API_PUBLIC |
| Set a recursive property in a mutex attribute. More...
|
|
int | ABT_mutex_attr_get_recursive (ABT_mutex_attr attr, ABT_bool *recursive) ABT_API_PUBLIC |
| Get a recursive property in a mutex attribute. More...
|
|
int | ABT_cond_create (ABT_cond *newcond) ABT_API_PUBLIC |
| Create a new condition variable. More...
|
|
int | ABT_cond_free (ABT_cond *cond) ABT_API_PUBLIC |
| Free a condition variable. More...
|
|
int | ABT_cond_wait (ABT_cond cond, ABT_mutex mutex) ABT_API_PUBLIC |
| Wait on a condition variable. More...
|
|
int | ABT_cond_timedwait (ABT_cond cond, ABT_mutex mutex, const struct timespec *abstime) ABT_API_PUBLIC |
| Wait on a condition variable with a timeout limit. More...
|
|
int | ABT_cond_signal (ABT_cond cond) ABT_API_PUBLIC |
| Signal a condition. More...
|
|
int | ABT_cond_broadcast (ABT_cond cond) ABT_API_PUBLIC |
| Broadcast a condition. More...
|
|
int | ABT_rwlock_create (ABT_rwlock *newrwlock) ABT_API_PUBLIC |
| Create a new readers-writer lock. More...
|
|
int | ABT_rwlock_free (ABT_rwlock *rwlock) ABT_API_PUBLIC |
| Free a readers-writer lock. More...
|
|
int | ABT_rwlock_rdlock (ABT_rwlock rwlock) ABT_API_PUBLIC |
| Lock a readers-writer lock as a reader. More...
|
|
int | ABT_rwlock_wrlock (ABT_rwlock rwlock) ABT_API_PUBLIC |
| Lock a readers-writer lock as a writer. More...
|
|
int | ABT_rwlock_unlock (ABT_rwlock rwlock) ABT_API_PUBLIC |
| Unlock a readers-writer lock. More...
|
|
int | ABT_eventual_create (int nbytes, ABT_eventual *neweventual) ABT_API_PUBLIC |
| Create a new eventual. More...
|
|
int | ABT_eventual_free (ABT_eventual *eventual) ABT_API_PUBLIC |
| Free an eventual. More...
|
|
int | ABT_eventual_wait (ABT_eventual eventual, void **value) ABT_API_PUBLIC |
| Wait on an eventual. More...
|
|
int | ABT_eventual_test (ABT_eventual eventual, void **value, ABT_bool *is_ready) ABT_API_PUBLIC |
| Check if an eventual is ready. More...
|
|
int | ABT_eventual_set (ABT_eventual eventual, void *value, int nbytes) ABT_API_PUBLIC |
| Signal an eventual. More...
|
|
int | ABT_eventual_reset (ABT_eventual eventual) ABT_API_PUBLIC |
| Reset a readiness of an eventual. More...
|
|
int | ABT_future_create (uint32_t num_compartments, void(*cb_func)(void **arg), ABT_future *newfuture) ABT_API_PUBLIC |
| Create a new future. More...
|
|
int | ABT_future_free (ABT_future *future) ABT_API_PUBLIC |
| Free a future. More...
|
|
int | ABT_future_wait (ABT_future future) ABT_API_PUBLIC |
| Wait on a future. More...
|
|
int | ABT_future_test (ABT_future future, ABT_bool *is_ready) ABT_API_PUBLIC |
| Check if a future is ready. More...
|
|
int | ABT_future_set (ABT_future future, void *value) ABT_API_PUBLIC |
| Signal a future. More...
|
|
int | ABT_future_reset (ABT_future future) ABT_API_PUBLIC |
| Reset readiness of a future. More...
|
|
int | ABT_barrier_create (uint32_t num_waiters, ABT_barrier *newbarrier) ABT_API_PUBLIC |
| Create a new barrier. More...
|
|
int | ABT_barrier_reinit (ABT_barrier barrier, uint32_t num_waiters) ABT_API_PUBLIC |
| Reinitialize a barrier with a new number of waiters. More...
|
|
int | ABT_barrier_free (ABT_barrier *barrier) ABT_API_PUBLIC |
| Free a barrier. More...
|
|
int | ABT_barrier_wait (ABT_barrier barrier) ABT_API_PUBLIC |
| Wait on a barrier. More...
|
|
int | ABT_barrier_get_num_waiters (ABT_barrier barrier, uint32_t *num_waiters) ABT_API_PUBLIC |
| Get the number of waiters of a barrier. More...
|
|
int | ABT_error_get_str (int err, char *str, size_t *len) ABT_API_PUBLIC |
| Retrieve a string of an error code and its length. More...
|
|
double | ABT_get_wtime (void) ABT_API_PUBLIC |
| Get elapsed wall clock time. More...
|
|
int | ABT_timer_create (ABT_timer *newtimer) ABT_API_PUBLIC |
| Create a new timer. More...
|
|
int | ABT_timer_dup (ABT_timer timer, ABT_timer *newtimer) ABT_API_PUBLIC |
| Duplicate a timer. More...
|
|
int | ABT_timer_free (ABT_timer *timer) ABT_API_PUBLIC |
| Free a timer. More...
|
|
int | ABT_timer_start (ABT_timer timer) ABT_API_PUBLIC |
| Start a timer. More...
|
|
int | ABT_timer_stop (ABT_timer timer) ABT_API_PUBLIC |
| Stop a timer. More...
|
|
int | ABT_timer_read (ABT_timer timer, double *secs) ABT_API_PUBLIC |
| Read the elapsed time of the timer. More...
|
|
int | ABT_timer_stop_and_read (ABT_timer timer, double *secs) ABT_API_PUBLIC |
| Stop a timer and read an elapsed time of a timer. More...
|
|
int | ABT_timer_stop_and_add (ABT_timer timer, double *secs) ABT_API_PUBLIC |
| Stop a timer and add an elapsed time of a timer. More...
|
|
int | ABT_timer_get_overhead (double *overhead) ABT_API_PUBLIC |
| Obtain an overhead time of using ABT_timer. More...
|
|
int | ABT_info_query_config (ABT_info_query_kind query_kind, void *val) ABT_API_PUBLIC |
| Retrieve the configuration information. More...
|
|
int | ABT_info_print_config (FILE *fp) ABT_API_PUBLIC |
| Print the runtime information of Argobots. More...
|
|
int | ABT_info_print_all_xstreams (FILE *fp) ABT_API_PUBLIC |
| Print the information of all execution streams. More...
|
|
int | ABT_info_print_xstream (FILE *fp, ABT_xstream xstream) ABT_API_PUBLIC |
| Print the information of an execution stream. More...
|
|
int | ABT_info_print_sched (FILE *fp, ABT_sched sched) ABT_API_PUBLIC |
| Print the information of a scheduler. More...
|
|
int | ABT_info_print_pool (FILE *fp, ABT_pool pool) ABT_API_PUBLIC |
| Print the information of a pool. More...
|
|
int | ABT_info_print_thread (FILE *fp, ABT_thread thread) ABT_API_PUBLIC |
| Print the information of a work unit. More...
|
|
int | ABT_info_print_thread_attr (FILE *fp, ABT_thread_attr attr) ABT_API_PUBLIC |
| Print the information of a ULT attribute. More...
|
|
int | ABT_info_print_task (FILE *fp, ABT_task task) ABT_API_PUBLIC |
| Print the information of a work unit. More...
|
|
int | ABT_info_print_thread_stack (FILE *fp, ABT_thread thread) ABT_API_PUBLIC |
| Print stack of a work unit. More...
|
|
int | ABT_info_print_thread_stacks_in_pool (FILE *fp, ABT_pool pool) ABT_API_PUBLIC |
| Print stacks of all work units in a pool. More...
|
|
int | ABT_info_trigger_print_all_thread_stacks (FILE *fp, double timeout, void(*cb_func)(ABT_bool, void *), void *arg) ABT_API_PUBLIC |
| Print stacks of work units in pools associated with all the main schedulers. More...
|
|
int | ABT_tool_register_thread_callback (ABT_tool_thread_callback_fn cb_func, uint64_t event_mask, void *user_arg) ABT_API_PUBLIC |
| Register a callback function for work-unit events. More...
|
|
int | ABT_tool_query_thread (ABT_tool_context context, uint64_t event, ABT_tool_query_kind query_kind, void *val) ABT_API_PUBLIC |
| Query information associated with a work-unit event. More...
|
|