ARGOBOTS
1.1
|
Go to the source code of this file.
Data Structures | |
union | ABTI_mem_pool_header_bucket_info |
struct | ABTI_mem_pool_header |
struct | ABTI_mem_pool_page |
struct | ABTI_mem_pool_global_pool |
struct | ABTI_mem_pool_local_pool |
Macros | |
#define | ABT_MEM_POOL_MAX_LOCAL_BUCKETS 2 |
#define | ABT_MEM_POOL_NUM_RETURN_BUCKETS 1 |
#define | ABT_MEM_POOL_NUM_TAKE_BUCKETS 1 |
Typedefs | |
typedef union ABTI_mem_pool_header_bucket_info | ABTI_mem_pool_header_bucket_info |
typedef struct ABTI_mem_pool_header | ABTI_mem_pool_header |
typedef struct ABTI_mem_pool_page | ABTI_mem_pool_page |
typedef struct ABTI_mem_pool_global_pool | ABTI_mem_pool_global_pool |
typedef struct ABTI_mem_pool_local_pool | ABTI_mem_pool_local_pool |
Functions | |
void | ABTI_mem_pool_init_global_pool (ABTI_mem_pool_global_pool *p_global_pool, size_t num_headers_per_bucket, size_t header_size, size_t header_offset, size_t page_size, const ABTU_MEM_LARGEPAGE_TYPE *lp_type_requests, uint32_t num_lp_type_requests, size_t alignment_hint) |
void | ABTI_mem_pool_destroy_global_pool (ABTI_mem_pool_global_pool *p_global_pool) |
ABTU_ret_err int | ABTI_mem_pool_init_local_pool (ABTI_mem_pool_local_pool *p_local_pool, ABTI_mem_pool_global_pool *p_global_pool) |
void | ABTI_mem_pool_destroy_local_pool (ABTI_mem_pool_local_pool *p_local_pool) |
int | ABTI_mem_pool_take_bucket (ABTI_mem_pool_global_pool *p_global_pool, ABTI_mem_pool_header **p_bucket) |
void | ABTI_mem_pool_return_bucket (ABTI_mem_pool_global_pool *p_global_pool, ABTI_mem_pool_header *bucket) |
static ABTU_ret_err int | ABTI_mem_pool_alloc (ABTI_mem_pool_local_pool *p_local_pool, void **p_mem) |
static void | ABTI_mem_pool_free (ABTI_mem_pool_local_pool *p_local_pool, void *mem) |
#define ABT_MEM_POOL_MAX_LOCAL_BUCKETS 2 |
Definition at line 9 of file abti_mem_pool.h.
#define ABT_MEM_POOL_NUM_RETURN_BUCKETS 1 |
Definition at line 10 of file abti_mem_pool.h.
#define ABT_MEM_POOL_NUM_TAKE_BUCKETS 1 |
Definition at line 11 of file abti_mem_pool.h.
typedef struct ABTI_mem_pool_global_pool ABTI_mem_pool_global_pool |
typedef struct ABTI_mem_pool_header ABTI_mem_pool_header |
typedef struct ABTI_mem_pool_local_pool ABTI_mem_pool_local_pool |
typedef struct ABTI_mem_pool_page ABTI_mem_pool_page |
|
inlinestatic |
Definition at line 116 of file abti_mem_pool.h.
Referenced by ABTI_mem_alloc_desc().
void ABTI_mem_pool_destroy_global_pool | ( | ABTI_mem_pool_global_pool * | p_global_pool | ) |
Definition at line 105 of file mem_pool.c.
void ABTI_mem_pool_destroy_local_pool | ( | ABTI_mem_pool_local_pool * | p_local_pool | ) |
Definition at line 144 of file mem_pool.c.
|
inlinestatic |
Definition at line 162 of file abti_mem_pool.h.
Referenced by ABTI_mem_free_desc(), ABTI_mem_free_nythread(), and ABTI_mem_free_thread().
void ABTI_mem_pool_init_global_pool | ( | ABTI_mem_pool_global_pool * | p_global_pool, |
size_t | num_headers_per_bucket, | ||
size_t | header_size, | ||
size_t | header_offset, | ||
size_t | page_size, | ||
const ABTU_MEM_LARGEPAGE_TYPE * | lp_type_requests, | ||
uint32_t | num_lp_type_requests, | ||
size_t | alignment_hint | ||
) |
Definition at line 77 of file mem_pool.c.
ABTU_ret_err int ABTI_mem_pool_init_local_pool | ( | ABTI_mem_pool_local_pool * | p_local_pool, |
ABTI_mem_pool_global_pool * | p_global_pool | ||
) |
Definition at line 129 of file mem_pool.c.
void ABTI_mem_pool_return_bucket | ( | ABTI_mem_pool_global_pool * | p_global_pool, |
ABTI_mem_pool_header * | bucket | ||
) |
Definition at line 279 of file mem_pool.c.
Referenced by ABTI_mem_pool_alloc(), ABTI_mem_pool_destroy_local_pool(), ABTI_mem_pool_free(), and mem_pool_return_partial_bucket().
int ABTI_mem_pool_take_bucket | ( | ABTI_mem_pool_global_pool * | p_global_pool, |
ABTI_mem_pool_header ** | p_bucket | ||
) |
Definition at line 165 of file mem_pool.c.
Referenced by ABTI_mem_pool_alloc(), and ABTI_mem_pool_init_local_pool().