Lines Matching refs:task_team

25 static void __kmp_enable_tasking(kmp_task_team_t *task_team,
30 kmp_task_team_t *task_team);
333 kmp_task_team_t *task_team = thread->th.th_task_team; in __kmp_push_task() local
362 if (UNLIKELY(!KMP_TASKING_ENABLED(task_team))) { in __kmp_push_task()
363 __kmp_enable_tasking(task_team, thread); in __kmp_push_task()
365 KMP_DEBUG_ASSERT(TCR_4(task_team->tt.tt_found_tasks) == TRUE); in __kmp_push_task()
366 KMP_DEBUG_ASSERT(TCR_PTR(task_team->tt.tt_threads_data) != NULL); in __kmp_push_task()
369 thread_data = &task_team->tt.tt_threads_data[tid]; in __kmp_push_task()
826 kmp_task_team_t *task_team = in __kmp_task_finish() local
950 } else if (task_team && (task_team->tt.tt_found_proxy_tasks || in __kmp_task_finish()
951 task_team->tt.tt_hidden_helper_task_encountered)) { in __kmp_task_finish()
1263 kmp_task_team_t *task_team = encountering_thread->th.th_task_team; in __kmp_task_alloc() local
1266 if (!KMP_TASKING_ENABLED(task_team)) { in __kmp_task_alloc()
1270 __kmp_enable_tasking(task_team, encountering_thread); in __kmp_task_alloc()
1272 kmp_thread_data_t *thread_data = &task_team->tt.tt_threads_data[tid]; in __kmp_task_alloc()
1280 task_team->tt.tt_found_proxy_tasks == FALSE) in __kmp_task_alloc()
1281 TCW_4(task_team->tt.tt_found_proxy_tasks, TRUE); in __kmp_task_alloc()
1283 task_team->tt.tt_hidden_helper_task_encountered == FALSE) in __kmp_task_alloc()
1284 TCW_4(task_team->tt.tt_hidden_helper_task_encountered, TRUE); in __kmp_task_alloc()
2032 kmp_task_team_t *task_team = thread->th.th_task_team; in __kmpc_omp_taskyield() local
2033 if (task_team != NULL) { in __kmpc_omp_taskyield()
2034 if (KMP_TASKING_ENABLED(task_team)) { in __kmpc_omp_taskyield()
2662 kmp_task_team_t *task_team, in __kmp_remove_my_task() argument
2670 KMP_DEBUG_ASSERT(task_team->tt.tt_threads_data != in __kmp_remove_my_task()
2673 thread_data = &task_team->tt.tt_threads_data[__kmp_tid_from_gtid(gtid)]; in __kmp_remove_my_task()
2734 kmp_task_team_t *task_team, in __kmp_steal_task() argument
2747 threads_data = task_team->tt.tt_threads_data; in __kmp_steal_task()
2755 gtid, __kmp_gtid_from_thread(victim_thr), task_team, in __kmp_steal_task()
2762 gtid, __kmp_gtid_from_thread(victim_thr), task_team, in __kmp_steal_task()
2776 gtid, __kmp_gtid_from_thread(victim_thr), task_team, ntasks, in __kmp_steal_task()
2789 if (!task_team->tt.tt_untied_task_encountered) { in __kmp_steal_task()
2794 gtid, __kmp_gtid_from_thread(victim_thr), task_team, ntasks, in __kmp_steal_task()
2816 gtid, __kmp_gtid_from_thread(victim_thr), task_team, ntasks, in __kmp_steal_task()
2843 gtid, count + 1, task_team)); in __kmp_steal_task()
2855 gtid, taskdata, __kmp_gtid_from_thread(victim_thr), task_team, in __kmp_steal_task()
2876 kmp_task_team_t *task_team = thread->th.th_task_team; in __kmp_execute_tasks_template() local
2888 if (task_team == NULL || current_task == NULL) in __kmp_execute_tasks_template()
2896 threads_data = (kmp_thread_data_t *)TCR_PTR(task_team->tt.tt_threads_data); in __kmp_execute_tasks_template()
2900 nthreads = task_team->tt.tt_nproc; in __kmp_execute_tasks_template()
2901 unfinished_threads = &(task_team->tt.tt_unfinished_threads); in __kmp_execute_tasks_template()
2902 KMP_DEBUG_ASSERT(nthreads > 1 || task_team->tt.tt_found_proxy_tasks || in __kmp_execute_tasks_template()
2903 task_team->tt.tt_hidden_helper_task_encountered); in __kmp_execute_tasks_template()
2911 task = __kmp_remove_my_task(thread, gtid, task_team, is_constrained); in __kmp_execute_tasks_template()
2965 task = __kmp_steal_task(other_thread, gtid, task_team, in __kmp_execute_tasks_template()
3042 gtid, count, task_team)); in __kmp_execute_tasks_template()
3130 static void __kmp_enable_tasking(kmp_task_team_t *task_team, in __kmp_enable_tasking() argument
3138 KMP_DEBUG_ASSERT(task_team != NULL); in __kmp_enable_tasking()
3141 nthreads = task_team->tt.tt_nproc; in __kmp_enable_tasking()
3146 is_init_thread = __kmp_realloc_task_threads_data(this_thr, task_team); in __kmp_enable_tasking()
3156 threads_data = (kmp_thread_data_t *)TCR_PTR(task_team->tt.tt_threads_data); in __kmp_enable_tasking()
3288 kmp_task_team_t *task_team) { in __kmp_realloc_task_threads_data() argument
3293 if (TCR_4(task_team->tt.tt_found_tasks)) { in __kmp_realloc_task_threads_data()
3298 threads_data_p = &task_team->tt.tt_threads_data; in __kmp_realloc_task_threads_data()
3299 nthreads = task_team->tt.tt_nproc; in __kmp_realloc_task_threads_data()
3300 maxthreads = task_team->tt.tt_max_threads; in __kmp_realloc_task_threads_data()
3305 __kmp_acquire_bootstrap_lock(&task_team->tt.tt_threads_lock); in __kmp_realloc_task_threads_data()
3307 if (!TCR_4(task_team->tt.tt_found_tasks)) { in __kmp_realloc_task_threads_data()
3323 __kmp_gtid_from_thread(thread), task_team, nthreads, maxthreads)); in __kmp_realloc_task_threads_data()
3347 __kmp_gtid_from_thread(thread), task_team, nthreads)); in __kmp_realloc_task_threads_data()
3361 task_team->tt.tt_max_threads = nthreads; in __kmp_realloc_task_threads_data()
3381 TCW_SYNC_4(task_team->tt.tt_found_tasks, TRUE); in __kmp_realloc_task_threads_data()
3384 __kmp_release_bootstrap_lock(&task_team->tt.tt_threads_lock); in __kmp_realloc_task_threads_data()
3391 static void __kmp_free_task_threads_data(kmp_task_team_t *task_team) { in __kmp_free_task_threads_data() argument
3392 __kmp_acquire_bootstrap_lock(&task_team->tt.tt_threads_lock); in __kmp_free_task_threads_data()
3393 if (task_team->tt.tt_threads_data != NULL) { in __kmp_free_task_threads_data()
3395 for (i = 0; i < task_team->tt.tt_max_threads; i++) { in __kmp_free_task_threads_data()
3396 __kmp_free_task_deque(&task_team->tt.tt_threads_data[i]); in __kmp_free_task_threads_data()
3398 __kmp_free(task_team->tt.tt_threads_data); in __kmp_free_task_threads_data()
3399 task_team->tt.tt_threads_data = NULL; in __kmp_free_task_threads_data()
3401 __kmp_release_bootstrap_lock(&task_team->tt.tt_threads_lock); in __kmp_free_task_threads_data()
3410 kmp_task_team_t *task_team = NULL; in __kmp_allocate_task_team() local
3420 task_team = __kmp_free_task_teams; in __kmp_allocate_task_team()
3421 TCW_PTR(__kmp_free_task_teams, task_team->tt.tt_next); in __kmp_allocate_task_team()
3422 task_team->tt.tt_next = NULL; in __kmp_allocate_task_team()
3427 if (task_team == NULL) { in __kmp_allocate_task_team()
3433 task_team = (kmp_task_team_t *)__kmp_allocate(sizeof(kmp_task_team_t)); in __kmp_allocate_task_team()
3434 __kmp_init_bootstrap_lock(&task_team->tt.tt_threads_lock); in __kmp_allocate_task_team()
3440 &task_team->tt.tt_found_tasks, sizeof(task_team->tt.tt_found_tasks)); in __kmp_allocate_task_team()
3443 CCAST(kmp_uint32 *, &task_team->tt.tt_active), in __kmp_allocate_task_team()
3444 sizeof(task_team->tt.tt_active)); in __kmp_allocate_task_team()
3452 TCW_4(task_team->tt.tt_found_tasks, FALSE); in __kmp_allocate_task_team()
3453 TCW_4(task_team->tt.tt_found_proxy_tasks, FALSE); in __kmp_allocate_task_team()
3454 task_team->tt.tt_nproc = nthreads = team->t.t_nproc; in __kmp_allocate_task_team()
3456 KMP_ATOMIC_ST_REL(&task_team->tt.tt_unfinished_threads, nthreads); in __kmp_allocate_task_team()
3457 TCW_4(task_team->tt.tt_hidden_helper_task_encountered, FALSE); in __kmp_allocate_task_team()
3458 TCW_4(task_team->tt.tt_active, TRUE); in __kmp_allocate_task_team()
3462 (thread ? __kmp_gtid_from_thread(thread) : -1), task_team, in __kmp_allocate_task_team()
3463 KMP_ATOMIC_LD_RLX(&task_team->tt.tt_unfinished_threads))); in __kmp_allocate_task_team()
3464 return task_team; in __kmp_allocate_task_team()
3470 void __kmp_free_task_team(kmp_info_t *thread, kmp_task_team_t *task_team) { in __kmp_free_task_team() argument
3472 thread ? __kmp_gtid_from_thread(thread) : -1, task_team)); in __kmp_free_task_team()
3477 KMP_DEBUG_ASSERT(task_team->tt.tt_next == NULL); in __kmp_free_task_team()
3478 task_team->tt.tt_next = __kmp_free_task_teams; in __kmp_free_task_team()
3479 TCW_PTR(__kmp_free_task_teams, task_team); in __kmp_free_task_team()
3490 kmp_task_team_t *task_team; in __kmp_reap_task_teams() local
3495 while ((task_team = __kmp_free_task_teams) != NULL) { in __kmp_reap_task_teams()
3496 __kmp_free_task_teams = task_team->tt.tt_next; in __kmp_reap_task_teams()
3497 task_team->tt.tt_next = NULL; in __kmp_reap_task_teams()
3500 if (task_team->tt.tt_threads_data != NULL) { in __kmp_reap_task_teams()
3501 __kmp_free_task_threads_data(task_team); in __kmp_reap_task_teams()
3503 __kmp_free(task_team); in __kmp_reap_task_teams()
3610 kmp_task_team_t *task_team = team->t.t_task_team[other_team]; in __kmp_task_team_setup() local
3611 if (!task_team->tt.tt_active || in __kmp_task_team_setup()
3612 team->t.t_nproc != task_team->tt.tt_nproc) { in __kmp_task_team_setup()
3613 TCW_4(task_team->tt.tt_nproc, team->t.t_nproc); in __kmp_task_team_setup()
3614 TCW_4(task_team->tt.tt_found_tasks, FALSE); in __kmp_task_team_setup()
3615 TCW_4(task_team->tt.tt_found_proxy_tasks, FALSE); in __kmp_task_team_setup()
3616 KMP_ATOMIC_ST_REL(&task_team->tt.tt_unfinished_threads, in __kmp_task_team_setup()
3618 TCW_4(task_team->tt.tt_active, TRUE); in __kmp_task_team_setup()
3635 kmp_task_team_t *task_team = team->t.t_task_team[i]; in __kmp_task_team_setup() local
3636 if (KMP_TASKING_ENABLED(task_team)) { in __kmp_task_team_setup()
3639 __kmp_enable_tasking(task_team, this_thr); in __kmp_task_team_setup()
3640 for (int j = 0; j < task_team->tt.tt_nproc; ++j) { in __kmp_task_team_setup()
3641 kmp_thread_data_t *thread_data = &task_team->tt.tt_threads_data[j]; in __kmp_task_team_setup()
3681 kmp_task_team_t *task_team = team->t.t_task_team[this_thr->th.th_task_state]; in __kmp_task_team_wait() local
3684 KMP_DEBUG_ASSERT(task_team == this_thr->th.th_task_team); in __kmp_task_team_wait()
3686 if ((task_team != NULL) && KMP_TASKING_ENABLED(task_team)) { in __kmp_task_team_wait()
3690 __kmp_gtid_from_thread(this_thr), task_team)); in __kmp_task_team_wait()
3696 &task_team->tt.tt_unfinished_threads), in __kmp_task_team_wait()
3706 __kmp_gtid_from_thread(this_thr), task_team)); in __kmp_task_team_wait()
3707 KMP_DEBUG_ASSERT(task_team->tt.tt_nproc > 1 || in __kmp_task_team_wait()
3708 task_team->tt.tt_found_proxy_tasks == TRUE); in __kmp_task_team_wait()
3709 TCW_SYNC_4(task_team->tt.tt_found_proxy_tasks, FALSE); in __kmp_task_team_wait()
3710 KMP_CHECK_UPDATE(task_team->tt.tt_untied_task_encountered, 0); in __kmp_task_team_wait()
3711 TCW_SYNC_4(task_team->tt.tt_active, FALSE); in __kmp_task_team_wait()
3761 kmp_task_team_t *task_team = taskdata->td_task_team; in __kmp_give_task() local
3767 KMP_DEBUG_ASSERT(task_team != NULL); in __kmp_give_task()
3770 kmp_thread_data_t *thread_data = &task_team->tt.tt_threads_data[tid]; in __kmp_give_task()