ARGOBOTS  1.1
Functions | Variables
sched.c File Reference
#include "abti.h"
Include dependency graph for sched.c:

Go to the source code of this file.

Functions

static ABTU_ret_err int sched_create (ABT_sched_def *def, int num_pools, ABT_pool *pools, ABTI_sched_config *p_config, ABT_bool def_automatic, ABTI_sched **pp_newsched)
 
static ABTI_sched_kind sched_get_kind (ABT_sched_def *def)
 
int ABT_sched_create (ABT_sched_def *def, int num_pools, ABT_pool *pools, ABT_sched_config config, ABT_sched *newsched)
 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)
 Create a new scheduler with a predefined scheduler type. More...
 
int ABT_sched_free (ABT_sched *sched)
 Free a scheduler. More...
 
int ABT_sched_get_num_pools (ABT_sched sched, int *num_pools)
 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)
 Retrieve pools associated with a scheduler. More...
 
int ABT_sched_finish (ABT_sched sched)
 Request a scheduler to finish after its pools get empty. More...
 
int ABT_sched_exit (ABT_sched sched)
 Request a scheduler to finish. More...
 
int ABT_sched_has_to_stop (ABT_sched sched, ABT_bool *stop)
 Check if a scheduler needs to stop. More...
 
int ABT_sched_set_data (ABT_sched sched, void *data)
 Associate a user value with a scheduler. More...
 
int ABT_sched_get_data (ABT_sched sched, void **data)
 Retrieve a user value associated with a scheduler. More...
 
int ABT_sched_get_size (ABT_sched sched, size_t *size)
 Obtain the sum of sizes of pools associated with a scheduler. More...
 
int ABT_sched_get_total_size (ABT_sched sched, size_t *size)
 Obtain the sum of the total sizes of pools associated with a scheduler. More...
 
size_t ABTI_sched_get_size (ABTI_sched *p_sched)
 
void ABTI_sched_finish (ABTI_sched *p_sched)
 
void ABTI_sched_exit (ABTI_sched *p_sched)
 
ABTU_ret_err int ABTI_sched_create_basic (ABT_sched_predef predef, int num_pools, ABT_pool *pools, ABTI_sched_config *p_config, ABTI_sched **pp_newsched)
 
void ABTI_sched_free (ABTI_global *p_global, ABTI_local *p_local, ABTI_sched *p_sched, ABT_bool force_free)
 
ABT_bool ABTI_sched_has_to_stop (ABTI_local **pp_local, ABTI_sched *p_sched)
 
ABTU_ret_err int ABTI_sched_get_migration_pool (ABTI_sched *p_sched, ABTI_pool *source_pool, ABTI_pool **pp_pool)
 
size_t ABTI_sched_get_total_size (ABTI_sched *p_sched)
 
size_t ABTI_sched_get_effective_size (ABTI_local *p_local, ABTI_sched *p_sched)
 
void ABTI_sched_print (ABTI_sched *p_sched, FILE *p_os, int indent, ABT_bool print_sub)
 
void ABTI_sched_reset_id (void)
 

Variables

static ABTD_atomic_uint64 g_sched_id = ABTD_ATOMIC_UINT64_STATIC_INITIALIZER(0)
 

Function Documentation

◆ ABTI_sched_create_basic()

ABTU_ret_err int ABTI_sched_create_basic ( ABT_sched_predef  predef,
int  num_pools,
ABT_pool pools,
ABTI_sched_config p_config,
ABTI_sched **  pp_newsched 
)

◆ ABTI_sched_exit()

void ABTI_sched_exit ( ABTI_sched p_sched)

Definition at line 650 of file sched.c.

Referenced by ABT_sched_exit().

◆ ABTI_sched_finish()

void ABTI_sched_finish ( ABTI_sched p_sched)

Definition at line 645 of file sched.c.

Referenced by ABT_sched_finish(), and finailze_library().

◆ ABTI_sched_free()

void ABTI_sched_free ( ABTI_global p_global,
ABTI_local p_local,
ABTI_sched p_sched,
ABT_bool  force_free 
)

◆ ABTI_sched_get_effective_size()

size_t ABTI_sched_get_effective_size ( ABTI_local p_local,
ABTI_sched p_sched 
)

Definition at line 929 of file sched.c.

Referenced by ABTI_sched_has_to_stop().

◆ ABTI_sched_get_migration_pool()

ABTU_ret_err int ABTI_sched_get_migration_pool ( ABTI_sched p_sched,
ABTI_pool source_pool,
ABTI_pool **  pp_pool 
)

Definition at line 895 of file sched.c.

◆ ABTI_sched_get_size()

size_t ABTI_sched_get_size ( ABTI_sched p_sched)

Definition at line 633 of file sched.c.

Referenced by ABT_sched_get_size(), and ABTI_sched_print().

◆ ABTI_sched_get_total_size()

size_t ABTI_sched_get_total_size ( ABTI_sched p_sched)

Definition at line 912 of file sched.c.

Referenced by ABT_sched_get_total_size(), and ABTI_sched_print().

◆ ABTI_sched_has_to_stop()

ABT_bool ABTI_sched_has_to_stop ( ABTI_local **  pp_local,
ABTI_sched p_sched 
)

Definition at line 871 of file sched.c.

Referenced by ABT_sched_has_to_stop(), and sched_run().

◆ ABTI_sched_print()

void ABTI_sched_print ( ABTI_sched p_sched,
FILE *  p_os,
int  indent,
ABT_bool  print_sub 
)

Definition at line 959 of file sched.c.

Referenced by ABT_info_print_sched().

◆ ABTI_sched_reset_id()

void ABTI_sched_reset_id ( void  )

Definition at line 1033 of file sched.c.

Referenced by init_library().

◆ sched_create()

static ABTU_ret_err int sched_create ( ABT_sched_def def,
int  num_pools,
ABT_pool pools,
ABTI_sched_config p_config,
ABT_bool  def_automatic,
ABTI_sched **  pp_newsched 
)
static

Definition at line 1047 of file sched.c.

Referenced by ABT_sched_create(), and ABTI_sched_create_basic().

◆ sched_get_kind()

static ABTI_sched_kind sched_get_kind ( ABT_sched_def def)
inlinestatic

Definition at line 1042 of file sched.c.

Referenced by ABTI_sched_print(), and sched_create().

Variable Documentation

◆ g_sched_id

Definition at line 1032 of file sched.c.

Referenced by ABTI_sched_reset_id().