Dynamic Load Balance 3.6.1+32-59d1
Data Structures | Functions
mask_utils.h File Reference
#include "support/debug.h"
#include "support/types.h"
#include <sched.h>
Include dependency graph for mask_utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  mu_cpuset_t
 

Functions

void mu_init (void)
 
void mu_finalize (void)
 
int mu_get_system_size (void)
 
void mu_get_system_mask (cpu_set_t *mask)
 
int mu_get_system_hwthreads_per_core (void)
 
int mu_get_system_num_nodes (void)
 
int mu_get_system_cores_per_node (void)
 
void mu_get_system_description (print_buffer_t *buffer)
 
bool mu_system_has_smt (void)
 
int mu_get_num_cores (void)
 
int mu_get_core_id (int cpuid)
 
const mu_cpuset_tmu_get_core_mask (int cpuid)
 
const mu_cpuset_tmu_get_core_mask_by_coreid (int core_id)
 
void mu_get_nodes_intersecting_with_cpuset (cpu_set_t *node_set, const cpu_set_t *cpuset)
 
void mu_get_nodes_subset_of_cpuset (cpu_set_t *node_set, const cpu_set_t *cpuset)
 
void mu_get_cores_intersecting_with_cpuset (cpu_set_t *core_set, const cpu_set_t *cpuset)
 
void mu_get_cores_subset_of_cpuset (cpu_set_t *core_set, const cpu_set_t *cpuset)
 
int mu_get_cpu_next_core (const cpu_set_t *mask, int prev_cpu)
 
int mu_count_cores (const cpu_set_t *mask)
 
int mu_count_cores_intersecting_with_cpuset (const cpu_set_t *mask)
 
int mu_get_last_coreid (const cpu_set_t *mask)
 
int mu_take_last_coreid (cpu_set_t *mask)
 
void mu_unset_core (cpu_set_t *mask, int coreid)
 
void mu_set_core (cpu_set_t *mask, int coreid)
 
void mu_zero (cpu_set_t *result)
 
void mu_and (cpu_set_t *result, const cpu_set_t *mask1, const cpu_set_t *mask2)
 
void mu_or (cpu_set_t *result, const cpu_set_t *mask1, const cpu_set_t *mask2)
 
void mu_xor (cpu_set_t *result, const cpu_set_t *mask1, const cpu_set_t *mask2)
 
bool mu_equal (const cpu_set_t *mask1, const cpu_set_t *mask2)
 
bool mu_is_subset (const cpu_set_t *subset, const cpu_set_t *superset)
 
bool mu_is_superset (const cpu_set_t *superset, const cpu_set_t *subset)
 
bool mu_is_proper_subset (const cpu_set_t *subset, const cpu_set_t *superset)
 
bool mu_is_proper_superset (const cpu_set_t *superset, const cpu_set_t *subset)
 
bool mu_intersects (const cpu_set_t *mask1, const cpu_set_t *mask2)
 
int mu_count (const cpu_set_t *mask)
 
void mu_subtract (cpu_set_t *result, const cpu_set_t *minuend, const cpu_set_t *subtrahend)
 
int mu_get_single_cpu (const cpu_set_t *mask)
 
int mu_get_first_cpu (const cpu_set_t *mask)
 
int mu_get_last_cpu (const cpu_set_t *mask)
 
int mu_get_next_cpu (const cpu_set_t *mask, int prev)
 
int mu_get_next_unset (const cpu_set_t *mask, int prev)
 
const char * mu_to_str (const cpu_set_t *cpu_set)
 
void mu_parse_mask (const char *str, cpu_set_t *mask)
 
char * mu_parse_to_slurm_format (const cpu_set_t *mask)
 
bool mu_equivalent_masks (const char *str1, const char *str2)
 
void mu_get_quoted_mask (const cpu_set_t *mask, char *str, size_t namelen)
 
int mu_cmp_cpuids_by_ownership (const void *cpuid1, const void *cpuid2, void *mask)
 
int mu_cmp_cpuids_by_affinity (const void *cpuid1, const void *cpuid2, void *affinity)
 
bool mu_testing_is_initialized (void)
 
void mu_testing_set_sys_size (int size)
 
void mu_testing_set_sys (unsigned int num_cpus, unsigned int num_cores, unsigned int num_nodes)
 
void mu_testing_set_sys_masks (const cpu_set_t *sys_mask, const cpu_set_t *core_masks, unsigned int num_cores, const cpu_set_t *node_masks, unsigned int num_nodes)
 
void mu_testing_init_nohwloc (void)
 

Function Documentation

◆ mu_init()

void mu_init ( void  )

◆ mu_finalize()

void mu_finalize ( void  )

◆ mu_get_system_size()

int mu_get_system_size ( void  )

◆ mu_get_system_mask()

void mu_get_system_mask ( cpu_set_t *  mask)

◆ mu_get_system_hwthreads_per_core()

int mu_get_system_hwthreads_per_core ( void  )

◆ mu_get_system_num_nodes()

int mu_get_system_num_nodes ( void  )

◆ mu_get_system_cores_per_node()

int mu_get_system_cores_per_node ( void  )

◆ mu_get_system_description()

void mu_get_system_description ( print_buffer_t buffer)

◆ mu_system_has_smt()

bool mu_system_has_smt ( void  )

◆ mu_get_num_cores()

int mu_get_num_cores ( void  )

◆ mu_get_core_id()

int mu_get_core_id ( int  cpuid)

◆ mu_get_core_mask()

const mu_cpuset_t * mu_get_core_mask ( int  cpuid)

◆ mu_get_core_mask_by_coreid()

const mu_cpuset_t * mu_get_core_mask_by_coreid ( int  core_id)

◆ mu_get_nodes_intersecting_with_cpuset()

void mu_get_nodes_intersecting_with_cpuset ( cpu_set_t *  node_set,
const cpu_set_t *  cpuset 
)

◆ mu_get_nodes_subset_of_cpuset()

void mu_get_nodes_subset_of_cpuset ( cpu_set_t *  node_set,
const cpu_set_t *  cpuset 
)

◆ mu_get_cores_intersecting_with_cpuset()

void mu_get_cores_intersecting_with_cpuset ( cpu_set_t *  core_set,
const cpu_set_t *  cpuset 
)

◆ mu_get_cores_subset_of_cpuset()

void mu_get_cores_subset_of_cpuset ( cpu_set_t *  core_set,
const cpu_set_t *  cpuset 
)

◆ mu_get_cpu_next_core()

int mu_get_cpu_next_core ( const cpu_set_t *  mask,
int  prev_cpu 
)

◆ mu_count_cores()

int mu_count_cores ( const cpu_set_t *  mask)

◆ mu_count_cores_intersecting_with_cpuset()

int mu_count_cores_intersecting_with_cpuset ( const cpu_set_t *  mask)

◆ mu_get_last_coreid()

int mu_get_last_coreid ( const cpu_set_t *  mask)

◆ mu_take_last_coreid()

int mu_take_last_coreid ( cpu_set_t *  mask)

◆ mu_unset_core()

void mu_unset_core ( cpu_set_t *  mask,
int  coreid 
)

◆ mu_set_core()

void mu_set_core ( cpu_set_t *  mask,
int  coreid 
)

◆ mu_zero()

void mu_zero ( cpu_set_t *  result)

◆ mu_and()

void mu_and ( cpu_set_t *  result,
const cpu_set_t *  mask1,
const cpu_set_t *  mask2 
)

◆ mu_or()

void mu_or ( cpu_set_t *  result,
const cpu_set_t *  mask1,
const cpu_set_t *  mask2 
)

◆ mu_xor()

void mu_xor ( cpu_set_t *  result,
const cpu_set_t *  mask1,
const cpu_set_t *  mask2 
)

◆ mu_equal()

bool mu_equal ( const cpu_set_t *  mask1,
const cpu_set_t *  mask2 
)

◆ mu_is_subset()

bool mu_is_subset ( const cpu_set_t *  subset,
const cpu_set_t *  superset 
)

◆ mu_is_superset()

bool mu_is_superset ( const cpu_set_t *  superset,
const cpu_set_t *  subset 
)

◆ mu_is_proper_subset()

bool mu_is_proper_subset ( const cpu_set_t *  subset,
const cpu_set_t *  superset 
)

◆ mu_is_proper_superset()

bool mu_is_proper_superset ( const cpu_set_t *  superset,
const cpu_set_t *  subset 
)

◆ mu_intersects()

bool mu_intersects ( const cpu_set_t *  mask1,
const cpu_set_t *  mask2 
)

◆ mu_count()

int mu_count ( const cpu_set_t *  mask)

◆ mu_subtract()

void mu_subtract ( cpu_set_t *  result,
const cpu_set_t *  minuend,
const cpu_set_t *  subtrahend 
)

◆ mu_get_single_cpu()

int mu_get_single_cpu ( const cpu_set_t *  mask)

◆ mu_get_first_cpu()

int mu_get_first_cpu ( const cpu_set_t *  mask)

◆ mu_get_last_cpu()

int mu_get_last_cpu ( const cpu_set_t *  mask)

◆ mu_get_next_cpu()

int mu_get_next_cpu ( const cpu_set_t *  mask,
int  prev 
)

◆ mu_get_next_unset()

int mu_get_next_unset ( const cpu_set_t *  mask,
int  prev 
)

◆ mu_to_str()

const char * mu_to_str ( const cpu_set_t *  cpu_set)

◆ mu_parse_mask()

void mu_parse_mask ( const char *  str,
cpu_set_t *  mask 
)

◆ mu_parse_to_slurm_format()

char * mu_parse_to_slurm_format ( const cpu_set_t *  mask)

◆ mu_equivalent_masks()

bool mu_equivalent_masks ( const char *  str1,
const char *  str2 
)

◆ mu_get_quoted_mask()

void mu_get_quoted_mask ( const cpu_set_t *  mask,
char *  str,
size_t  namelen 
)

◆ mu_cmp_cpuids_by_ownership()

int mu_cmp_cpuids_by_ownership ( const void *  cpuid1,
const void *  cpuid2,
void *  mask 
)

◆ mu_cmp_cpuids_by_affinity()

int mu_cmp_cpuids_by_affinity ( const void *  cpuid1,
const void *  cpuid2,
void *  affinity 
)

◆ mu_testing_is_initialized()

bool mu_testing_is_initialized ( void  )

◆ mu_testing_set_sys_size()

void mu_testing_set_sys_size ( int  size)

◆ mu_testing_set_sys()

void mu_testing_set_sys ( unsigned int  num_cpus,
unsigned int  num_cores,
unsigned int  num_nodes 
)

◆ mu_testing_set_sys_masks()

void mu_testing_set_sys_masks ( const cpu_set_t *  sys_mask,
const cpu_set_t *  core_masks,
unsigned int  num_cores,
const cpu_set_t *  node_masks,
unsigned int  num_nodes 
)

◆ mu_testing_init_nohwloc()

void mu_testing_init_nohwloc ( void  )