Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
#include <scheduler.h>
Public Attributes | |
size_t | my_arena_index |
Index of the arena slot the scheduler occupies now, or occupied last time. More... | |
arena_slot * | my_arena_slot |
Pointer to the slot in the arena we own at the moment. More... | |
arena * | my_arena |
The arena that I own (if master) or am servicing at the moment (if worker) More... | |
task * | my_innermost_running_task |
Innermost task whose task::execute() is running. A dummy task on the outermost level. More... | |
mail_inbox | my_inbox |
affinity_id | my_affinity_id |
The mailbox id assigned to this scheduler. More... | |
scheduler_properties | my_properties |
Definition at line 77 of file scheduler.h.
affinity_id tbb::internal::scheduler_state::my_affinity_id |
The mailbox id assigned to this scheduler.
The id is assigned upon first entry into the arena. TODO: how are id's being garbage collected? TODO: master thread may enter arena and leave and then reenter. We want to give it the same affinity_id upon reentry, if practical. TODO: investigate if it makes sense to merge this field into scheduler_properties.
Definition at line 99 of file scheduler.h.
Referenced by tbb::internal::generic_scheduler::attach_mailbox(), tbb::internal::generic_scheduler::get_mailbox_task(), tbb::internal::generic_scheduler::get_task(), tbb::internal::generic_scheduler::prepare_for_spawning(), and tbb::internal::generic_scheduler::steal_task().
arena* tbb::internal::scheduler_state::my_arena |
The arena that I own (if master) or am servicing at the moment (if worker)
Definition at line 85 of file scheduler.h.
Referenced by tbb::internal::generic_scheduler::acquire_task_pool(), tbb::internal::generic_scheduler::attach_arena(), tbb::internal::generic_scheduler::attach_mailbox(), tbb::internal::generic_scheduler::cleanup_master(), tbb::internal::generic_scheduler::get_task(), tbb::internal::generic_scheduler::leave_task_pool(), tbb::internal::generic_scheduler::local_spawn(), tbb::internal::generic_scheduler::lock_task_pool(), tbb::internal::generic_scheduler::max_threads_in_arena(), tbb::internal::generic_scheduler::nested_arena_entry(), tbb::internal::generic_scheduler::nested_arena_exit(), tbb::internal::generic_scheduler::prepare_for_spawning(), tbb::internal::generic_scheduler::publish_task_pool(), tbb::internal::generic_scheduler::steal_task(), tbb::internal::generic_scheduler::steal_task_from(), tbb::internal::custom_scheduler< SchedulerTraits >::tally_completion_of_predecessor(), and tbb::internal::generic_scheduler::wait_until_empty().
size_t tbb::internal::scheduler_state::my_arena_index |
Index of the arena slot the scheduler occupies now, or occupied last time.
Definition at line 79 of file scheduler.h.
Referenced by tbb::internal::generic_scheduler::acquire_task_pool(), tbb::internal::generic_scheduler::attach_arena(), tbb::internal::generic_scheduler::generic_scheduler(), tbb::internal::generic_scheduler::leave_task_pool(), tbb::internal::generic_scheduler::nested_arena_exit(), tbb::internal::generic_scheduler::publish_task_pool(), and tbb::internal::generic_scheduler::steal_task().
arena_slot* tbb::internal::scheduler_state::my_arena_slot |
Pointer to the slot in the arena we own at the moment.
Definition at line 82 of file scheduler.h.
Referenced by tbb::internal::generic_scheduler::acquire_task_pool(), tbb::internal::generic_scheduler::attach_arena(), tbb::internal::generic_scheduler::cleanup_master(), tbb::internal::generic_scheduler::cleanup_scheduler(), tbb::internal::generic_scheduler::commit_relocated_tasks(), tbb::internal::generic_scheduler::commit_spawned_tasks(), tbb::internal::generic_scheduler::get_task(), tbb::internal::generic_scheduler::is_local_task_pool_quiescent(), tbb::internal::generic_scheduler::is_quiescent_local_task_pool_empty(), tbb::internal::generic_scheduler::is_quiescent_local_task_pool_reset(), tbb::internal::generic_scheduler::is_task_pool_published(), tbb::internal::generic_scheduler::leave_task_pool(), tbb::internal::generic_scheduler::local_spawn(), tbb::internal::generic_scheduler::prepare_task_pool(), tbb::internal::generic_scheduler::publish_task_pool(), tbb::internal::generic_scheduler::release_task_pool(), and tbb::internal::generic_scheduler::reset_task_pool_and_leave().
mail_inbox tbb::internal::scheduler_state::my_inbox |
Definition at line 90 of file scheduler.h.
Referenced by tbb::internal::generic_scheduler::attach_arena(), tbb::internal::generic_scheduler::attach_mailbox(), and tbb::internal::generic_scheduler::get_mailbox_task().
task* tbb::internal::scheduler_state::my_innermost_running_task |
Innermost task whose task::execute() is running. A dummy task on the outermost level.
Definition at line 88 of file scheduler.h.
Referenced by tbb::internal::allocate_root_proxy::allocate(), tbb::internal::generic_scheduler::generic_scheduler(), tbb::internal::generic_scheduler::get_task(), tbb::internal::nested_arena_context::mimic_outermost_level(), tbb::internal::nested_arena_context::nested_arena_context(), tbb::internal::generic_scheduler::prepare_for_spawning(), tbb::task::self(), tbb::internal::generic_scheduler::steal_task(), and tbb::internal::nested_arena_context::~nested_arena_context().
scheduler_properties tbb::internal::scheduler_state::my_properties |
Definition at line 101 of file scheduler.h.
Referenced by tbb::internal::generic_scheduler::cleanup_scheduler(), tbb::internal::generic_scheduler::generic_scheduler(), tbb::internal::generic_scheduler::init_stack_info(), tbb::internal::generic_scheduler::is_worker(), tbb::internal::nested_arena_context::mimic_outermost_level(), tbb::internal::nested_arena_context::nested_arena_context(), tbb::internal::generic_scheduler::outermost_level(), and tbb::internal::nested_arena_context::~nested_arena_context().