Home
last modified time | relevance | path

Searched refs:td (Results 1 – 21 of 21) sorted by relevance

/oneTBB/src/tbb/
H A Dtask.cpp42 thread_data& td = *governor::get_thread_data(); in suspend() local
76 thread_data& td = *governor::get_thread_data(); in current_suspend_point() local
86 …task_disp->init_suspend_point(td.my_arena, td.my_arena->my_threading_control->worker_stack_size()); in create_coroutine()
127 thread_data* td = m_thread_data; in resume() local
133 td->detach_task_dispatcher(); in resume()
134 td->attach_task_dispatcher(target); in resume()
143 thread_data* td = m_thread_data; in resume() local
149 arena_slot* slot = td->my_arena_slot; in resume()
161 thread_data* td = m_thread_data; in do_post_resume_action() local
162 switch (td->my_post_resume_action) { in do_post_resume_action()
[all …]
H A Darena.cpp580 if( td && td->my_arena ) { in attach()
581 arena* a = td->my_arena; in attach()
603 : td->my_arena in enqueue()
611 a->enqueue_task(t, *ctx, *td); in enqueue()
620 m_orig_arena = td.my_arena; in nested_arena_context()
624 td.detach_task_dispatcher(); in nested_arena_context()
633 if (td.my_arena_index >= td.my_arena->my_num_reserved_slots) { in nested_arena_context()
639 td.my_arena->my_observers.notify_entry_observers(td.my_last_observer, /* worker*/false); in nested_arena_context()
664 td.my_arena->my_observers.notify_exit_observers(td.my_last_observer, /*worker*/ false); in ~nested_arena_context()
669 if (td.my_arena_index >= td.my_arena->my_num_reserved_slots) { in ~nested_arena_context()
[all …]
H A Dgovernor.h100 thread_data* td = theTLS.get(); in get_thread_data() local
101 if (td) { in get_thread_data()
102 return td; in get_thread_data()
105 td = theTLS.get(); in get_thread_data()
106 __TBB_ASSERT(td, nullptr); in get_thread_data()
107 return td; in get_thread_data()
110 static void set_thread_data(thread_data& td) { in set_thread_data() argument
111 theTLS.set(&td); in set_thread_data()
122 static bool is_thread_data_set(thread_data* td) { in is_thread_data_set() argument
123 return theTLS.get() == td; in is_thread_data_set()
H A Dgovernor.cpp206 td.my_arena_slot->occupy(); in init_external_thread()
207 thr_control->register_thread(td); in init_external_thread()
208 set_thread_data(td); in init_external_thread()
222 auto clear_tls = [td] { in auto_terminate()
223 td->~thread_data(); in auto_terminate()
229 if (td->my_arena_slot) { in auto_terminate()
230 arena* a = td->my_arena; in auto_terminate()
236 set_thread_data(*td); in auto_terminate()
239 a->my_observers.notify_exit_observers(td->my_last_observer, td->my_is_worker); in auto_terminate()
241 td->leave_task_dispatcher(); in auto_terminate()
[all …]
H A Dtask_group_context.cpp105 void task_group_context_impl::register_with(d1::task_group_context& ctx, thread_data* td) { in register_with() argument
107 __TBB_ASSERT(td, nullptr); in register_with()
108 ctx.my_context_list = td->my_context_list; in register_with()
113 void task_group_context_impl::bind_to_impl(d1::task_group_context& ctx, thread_data* td) { in bind_to_impl() argument
118 ctx.my_parent = td->my_task_dispatcher->m_execute_data_ext.context; in bind_to_impl()
145 register_with(ctx, td); // Issues full fence in bind_to_impl()
157 register_with(ctx, td); // Issues full fence in bind_to_impl()
165 void task_group_context_impl::bind_to(d1::task_group_context& ctx, thread_data* td) { in bind_to() argument
182 …if (td->my_task_dispatcher->m_execute_data_ext.context == td->my_arena->my_default_ctx || !ctx.my_… in bind_to()
184 copy_fp_settings(ctx, *td->my_arena->my_default_ctx); in bind_to()
[all …]
H A Dobserver_proxy.cpp268 thread_data* td = governor::get_thread_data_if_initialized(); in observe() local
270 if (!(td && td->my_arena)) { in observe()
271 td = governor::get_thread_data(); in observe()
274 __TBB_ASSERT(td && td->my_arena, nullptr); in observe()
275 p->my_list = &td->my_arena->my_observers; in observe()
288 if (td && td->my_arena && &td->my_arena->my_observers == p->my_list) { in observe()
289 p->my_list->notify_entry_observers(td->my_last_observer, td->my_is_worker); in observe()
H A Dthreading_control.cpp80 cache_aligned_unique_ptr<thread_dispatcher> td = in make_thread_dispatcher() local
85 td->my_server->default_concurrency(), workers_soft_limit); in make_thread_dispatcher()
88 return td; in make_thread_dispatcher()
140 void threading_control_impl::register_thread(thread_data& td) { in register_thread() argument
141 my_cancellation_disseminator->register_thread(td); in register_thread()
143 void threading_control_impl::unregister_thread(thread_data& td) { in unregister_thread() argument
144 my_cancellation_disseminator->unregister_thread(td); in unregister_thread()
365 void threading_control::register_thread(thread_data& td) { in register_thread() argument
366 my_pimpl->register_thread(td); in register_thread()
369 void threading_control::unregister_thread(thread_data& td) { in unregister_thread() argument
[all …]
H A Dcancellation_disseminator.h63 void register_thread(thread_data& td) { in register_thread() argument
65 my_threads_list.push_front(td); in register_thread()
68 void unregister_thread(thread_data& td) { in unregister_thread() argument
70 my_threads_list.remove(td); in unregister_thread()
H A Dthread_dispatcher.cpp177 thread_data& td = static_cast<thread_data&>(j); in process() local
179 thread_dispatcher_client* client = td.my_last_client; in process()
182 td.my_last_client = client; in process()
183 client->process(td); in process()
211 thread_data* td = new (cache_aligned_allocate(sizeof(thread_data))) thread_data{ index, true }; in create_one_job()
213 my_threading_control.register_thread(*td); in create_one_job()
214 return td; in create_one_job()
H A Dtask_dispatcher.cpp135 thread_data* td = governor::get_thread_data_if_initialized(); in execution_slot() local
136 return td ? td->my_arena_index : d1::slot_id(-1); in execution_slot()
141 thread_data* td = governor::get_thread_data(); in current_context() local
142 assert_pointers_valid(td, td->my_task_dispatcher); in current_context()
144 task_dispatcher* task_disp = td->my_task_dispatcher; in current_context()
149 return td->my_task_dispatcher->m_execute_data_ext.context; in current_context()
H A Dthread_request_serializer.cpp24 thread_request_serializer::thread_request_serializer(thread_dispatcher& td, int soft_limit) in thread_request_serializer() argument
25 : my_thread_dispatcher(td) in thread_request_serializer()
79 …roxy::thread_request_serializer_proxy(thread_dispatcher& td, int soft_limit) : my_serializer(td, s… in thread_request_serializer_proxy() argument
H A Dthreading_control.h62 void register_thread(thread_data& td);
63 void unregister_thread(thread_data& td);
110 void register_thread(thread_data& td);
111 void unregister_thread(thread_data& td);
H A Dtask_dispatcher.h72 thread_data* td = ed_ext.task_disp->m_thread_data; in execute() local
73td->set_post_resume_action(task_dispatcher::post_resume_action::register_waiter, &monitor_node); in execute()
75 thread_control_monitor& wait_list = td->my_arena->get_waiting_threads_monitor(); in execute()
81 td->clear_post_resume_action(); in execute()
407 thread_data& td = *m_thread_data; in get_critical_task() local
408 arena& a = *td.my_arena; in get_critical_task()
409 arena_slot& slot = *td.my_arena_slot; in get_critical_task()
426 a.my_observers.notify_entry_observers(td.my_last_observer, td.my_is_worker); in get_critical_task()
H A Dthread_dispatcher_client.h35 void process(thread_data& td) { in process() argument
36 my_arena.process(td); in process()
H A Dthread_request_serializer.h40 thread_request_serializer(thread_dispatcher& td, int soft_limit);
63 thread_request_serializer_proxy(thread_dispatcher& td, int soft_limit);
H A Dsmall_object_pool.cpp85 … small_object_pool_impl::deallocate_impl(void* ptr, std::size_t number_of_bytes, thread_data& td) { in deallocate_impl() argument
91 if (td.my_small_object_pool == this) { in deallocate_impl()
H A Dsmall_object_pool_impl.h43 void deallocate_impl(void* ptr, std::size_t number_of_bytes, thread_data& td);
H A Dco_context.h238 thread_data* td = governor::get_thread_data(); in swap_coroutine() local
252 new_coroutine.my_thread_data = td; in swap_coroutine()
/oneTBB/examples/parallel_for/tachyon/src/
H A Dring.cpp96 flt t, td; in ring_intersect() local
102 td = VDot(&(rng->norm), &(ry->d)); in ring_intersect()
103 if (td != 0.0) { in ring_intersect()
104 t = t / td; in ring_intersect()
108 VDOT(td, pnt, pnt); in ring_intersect()
109 td = sqrt(td); in ring_intersect()
110 if ((td > rng->inrad) && (td < rng->outrad)) in ring_intersect()
H A Dplane.cpp85 flt t, td; in plane_intersect() local
88 td = VDot(&pln->norm, &ry->d); in plane_intersect()
89 if (td != 0.0) { in plane_intersect()
90 t /= td; in plane_intersect()
/oneTBB/doc/_static/
H A Dtheme_overrides.css4 .wy-table-responsive table td {