LLVM OpenMP 22.0.0git
root-threads-affinity.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <omp.h>
#include <pthread.h>
#include <unistd.h>
#include <assert.h>
#include <sys/types.h>
#include <sys/syscall.h>
#include "libomp_test_affinity.h"

Go to the source code of this file.

Macros

#define _GNU_SOURCE

Functions

int __kmpc_global_thread_num (void *)
int get_os_thread_id ()
int place_and_affinity_match ()
voidthread_func (void *arg)
int main (int argc, char **argv)

Variables

volatile int entry_flag = 0
volatile int flag = 0
volatile int num_roots_arrived = 0
int num_roots
int spawner = 0
pthread_mutex_t lock
int register_workers = 0
affinity_mask_tfull_mask

Macro Definition Documentation

◆ _GNU_SOURCE

#define _GNU_SOURCE

Definition at line 12 of file root-threads-affinity.c.

Function Documentation

◆ __kmpc_global_thread_num()

int __kmpc_global_thread_num ( void * )

Referenced by thread_func().

◆ get_os_thread_id()

int get_os_thread_id ( )

Definition at line 34 of file root-threads-affinity.c.

Referenced by thread_func().

◆ main()

◆ place_and_affinity_match()

◆ thread_func()

Variable Documentation

◆ entry_flag

volatile int entry_flag = 0

Definition at line 23 of file root-threads-affinity.c.

Referenced by thread_func().

◆ flag

volatile int flag = 0

Definition at line 24 of file root-threads-affinity.c.

Referenced by __kmp_atomic_execute_tasks_64(), __kmp_atomic_execute_tasks_64(), __kmp_atomic_resume_64(), __kmp_atomic_suspend_64(), __kmp_check_deps(), __kmp_env_toPrint(), __kmp_execute_tasks_32(), __kmp_execute_tasks_32(), __kmp_execute_tasks_64(), __kmp_execute_tasks_64(), __kmp_execute_tasks_oncore(), __kmp_execute_tasks_oncore(), __kmp_execute_tasks_template(), __kmp_hierarchical_barrier_gather(), __kmp_hierarchical_barrier_release(), __kmp_hyper_barrier_release(), __kmp_linear_barrier_gather_template(), __kmp_linear_barrier_release_template(), __kmp_null_resume_wrapper(), __kmp_reap_thread(), __kmp_release_64(), __kmp_release_template(), __kmp_resize_dist_barrier(), __kmp_resume_32(), __kmp_resume_64(), __kmp_resume_oncore(), __kmp_resume_template(), __kmp_resume_template(), __kmp_suspend_32(), __kmp_suspend_64(), __kmp_suspend_oncore(), __kmp_suspend_template(), __kmp_suspend_template(), __kmp_task_team_wait(), __kmp_tasking_barrier(), __kmp_tree_barrier_gather(), __kmp_tree_barrier_release(), __kmp_wait_64(), __kmp_wait_64(), __kmp_wait_template(), __kmp_win32_cond_wait(), __kmpc_atomic_cmplx10_add_cpt(), __kmpc_atomic_cmplx10_div_cpt(), __kmpc_atomic_cmplx10_mul_cpt(), __kmpc_atomic_cmplx10_sub_cpt(), __kmpc_atomic_cmplx4_add_cpt(), __kmpc_atomic_cmplx4_div_cpt(), __kmpc_atomic_cmplx4_mul_cpt(), __kmpc_atomic_cmplx4_sub_cpt(), __kmpc_atomic_cmplx8_add_cpt(), __kmpc_atomic_cmplx8_div_cpt(), __kmpc_atomic_cmplx8_mul_cpt(), __kmpc_atomic_cmplx8_sub_cpt(), __kmpc_atomic_fixed1_add_cpt(), __kmpc_atomic_fixed1_andb_cpt(), __kmpc_atomic_fixed1_andl_cpt(), __kmpc_atomic_fixed1_div_cpt(), __kmpc_atomic_fixed1_eqv_cpt(), __kmpc_atomic_fixed1_max_cpt(), __kmpc_atomic_fixed1_min_cpt(), __kmpc_atomic_fixed1_mul_cpt(), __kmpc_atomic_fixed1_neqv_cpt(), __kmpc_atomic_fixed1_orb_cpt(), __kmpc_atomic_fixed1_orl_cpt(), __kmpc_atomic_fixed1_shl_cpt(), __kmpc_atomic_fixed1_shr_cpt(), __kmpc_atomic_fixed1_sub_cpt(), __kmpc_atomic_fixed1_xor_cpt(), __kmpc_atomic_fixed1u_div_cpt(), __kmpc_atomic_fixed1u_shr_cpt(), __kmpc_atomic_fixed2_add_cpt(), __kmpc_atomic_fixed2_andb_cpt(), __kmpc_atomic_fixed2_andl_cpt(), __kmpc_atomic_fixed2_div_cpt(), __kmpc_atomic_fixed2_eqv_cpt(), __kmpc_atomic_fixed2_max_cpt(), __kmpc_atomic_fixed2_min_cpt(), __kmpc_atomic_fixed2_mul_cpt(), __kmpc_atomic_fixed2_neqv_cpt(), __kmpc_atomic_fixed2_orb_cpt(), __kmpc_atomic_fixed2_orl_cpt(), __kmpc_atomic_fixed2_shl_cpt(), __kmpc_atomic_fixed2_shr_cpt(), __kmpc_atomic_fixed2_sub_cpt(), __kmpc_atomic_fixed2_xor_cpt(), __kmpc_atomic_fixed2u_div_cpt(), __kmpc_atomic_fixed2u_shr_cpt(), __kmpc_atomic_fixed4_add_cpt(), __kmpc_atomic_fixed4_andb_cpt(), __kmpc_atomic_fixed4_andl_cpt(), __kmpc_atomic_fixed4_div_cpt(), __kmpc_atomic_fixed4_eqv_cpt(), __kmpc_atomic_fixed4_max_cpt(), __kmpc_atomic_fixed4_min_cpt(), __kmpc_atomic_fixed4_mul_cpt(), __kmpc_atomic_fixed4_neqv_cpt(), __kmpc_atomic_fixed4_orb_cpt(), __kmpc_atomic_fixed4_orl_cpt(), __kmpc_atomic_fixed4_shl_cpt(), __kmpc_atomic_fixed4_shr_cpt(), __kmpc_atomic_fixed4_sub_cpt(), __kmpc_atomic_fixed4_xor_cpt(), __kmpc_atomic_fixed4u_div_cpt(), __kmpc_atomic_fixed4u_shr_cpt(), __kmpc_atomic_fixed8_add_cpt(), __kmpc_atomic_fixed8_andb_cpt(), __kmpc_atomic_fixed8_andl_cpt(), __kmpc_atomic_fixed8_div_cpt(), __kmpc_atomic_fixed8_eqv_cpt(), __kmpc_atomic_fixed8_max_cpt(), __kmpc_atomic_fixed8_min_cpt(), __kmpc_atomic_fixed8_mul_cpt(), __kmpc_atomic_fixed8_neqv_cpt(), __kmpc_atomic_fixed8_orb_cpt(), __kmpc_atomic_fixed8_orl_cpt(), __kmpc_atomic_fixed8_shl_cpt(), __kmpc_atomic_fixed8_shr_cpt(), __kmpc_atomic_fixed8_sub_cpt(), __kmpc_atomic_fixed8_xor_cpt(), __kmpc_atomic_fixed8u_div_cpt(), __kmpc_atomic_fixed8u_shr_cpt(), __kmpc_atomic_float10_add_cpt(), __kmpc_atomic_float10_div_cpt(), __kmpc_atomic_float10_max_cpt(), __kmpc_atomic_float10_min_cpt(), __kmpc_atomic_float10_mul_cpt(), __kmpc_atomic_float10_sub_cpt(), __kmpc_atomic_float4_add_cpt(), __kmpc_atomic_float4_div_cpt(), __kmpc_atomic_float4_max_cpt(), __kmpc_atomic_float4_min_cpt(), __kmpc_atomic_float4_mul_cpt(), __kmpc_atomic_float4_sub_cpt(), __kmpc_atomic_float8_add_cpt(), __kmpc_atomic_float8_div_cpt(), __kmpc_atomic_float8_max_cpt(), __kmpc_atomic_float8_min_cpt(), __kmpc_atomic_float8_mul_cpt(), __kmpc_atomic_float8_sub_cpt(), __kmpc_doacross_post(), __kmpc_doacross_wait(), __kmpc_end_taskgroup(), __kmpc_omp_taskwait_deps_51(), __kmpc_omp_taskwait_template(), FTN_SET_DYNAMIC(), FTN_SET_NESTED(), KMPC_SET_DYNAMIC(), KMPC_SET_NESTED(), main(), kmp_flag_oncore::notdone_check(), ompc_set_dynamic(), ompc_set_nested(), ompt_multiplex_callback_parallel_begin(), ompt_multiplex_callback_parallel_end(), ompt_tsan_parallel_begin(), ompt_tsan_parallel_end(), on_ompt_callback_implicit_task(), on_ompt_callback_parallel_begin(), on_ompt_callback_parallel_begin(), on_ompt_callback_parallel_end(), signal_flag(), signal_flag(), thread_func(), wait_on_flag(), and wait_on_flag().

◆ full_mask

affinity_mask_t* full_mask

Definition at line 30 of file root-threads-affinity.c.

Referenced by main(), and thread_func().

◆ lock

pthread_mutex_t lock

Definition at line 28 of file root-threads-affinity.c.

◆ num_roots

int num_roots

Definition at line 26 of file root-threads-affinity.c.

Referenced by main(), and thread_func().

◆ num_roots_arrived

volatile int num_roots_arrived = 0

Definition at line 25 of file root-threads-affinity.c.

Referenced by thread_func().

◆ register_workers

int register_workers = 0

Definition at line 29 of file root-threads-affinity.c.

Referenced by main(), and thread_func().

◆ spawner

int spawner = 0

Definition at line 27 of file root-threads-affinity.c.

Referenced by main(), and thread_func().