struct queue_holder_numa
Declaration
template <typename QueueType>
struct queue_holder_numa { /* full declaration omitted */ };Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:55
Member Variables
- public std::size_t num_queues_
- public std::size_t domain_
- public std::vector<ThreadQueue*> queues_
Method Overview
- public void abort_all_suspended_threads()
- public bool add_new(pika::threads::policies::queue_holder_numa::ThreadQueue * receiver, std::size_t qidx, std::size_t & added, bool stealing, bool allow_stealing)
- public bool add_new_HP(pika::threads::policies::queue_holder_numa::ThreadQueue * receiver, std::size_t qidx, std::size_t & added, bool stealing, bool allow_stealing)
- public void debug_info()
- public bool dump_suspended_threads(std::size_t, std::int64_t &, bool)
- public bool enumerate_threads(const util::function<bool (thread_id_type)> & f, pika::threads::thread_schedule_state state) const
- public inline std::size_t get_new_tasks_queue_length() const
- public inline bool get_next_thread(std::size_t qidx, threads::thread_id_ref_type & thrd, bool stealing, bool core_stealing)
- public inline bool get_next_thread_HP(std::size_t qidx, threads::thread_id_ref_type & thrd, bool stealing, bool core_stealing)
- public inline std::int64_t get_thread_count(pika::threads::thread_schedule_state state = thread_schedule_state::unknown, pika::threads::thread_priority priority = thread_priority::default_) const
- public void increment_num_pending_accesses(std::size_t = 1)
- public void increment_num_pending_misses(std::size_t = 1)
- public void increment_num_stolen_from_pending(std::size_t = 1)
- public void increment_num_stolen_from_staged(std::size_t = 1)
- public void increment_num_stolen_to_pending(std::size_t = 1)
- public void increment_num_stolen_to_staged(std::size_t = 1)
- public void init(std::size_t domain, std::size_t queues)
- public void on_error(std::size_t, const std::exception_ptr &)
- public void on_start_thread(std::size_t)
- public void on_stop_thread(std::size_t)
- public queue_holder_numa<QueueType>()
- public inline std::size_t size() const
- public inline pika::threads::policies::queue_holder_numa::ThreadQueue * thread_queue(std::size_t id) const
- public ~queue_holder_numa<QueueType>()
Methods
void abort_all_suspended_threads()
void abort_all_suspended_threads()Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:240
bool add_new(
pika::threads::policies::queue_holder_numa::
ThreadQueue* receiver,
std::size_t qidx,
std::size_t& added,
bool stealing,
bool allow_stealing)
bool add_new(
pika::threads::policies::queue_holder_numa::
ThreadQueue* receiver,
std::size_t qidx,
std::size_t& added,
bool stealing,
bool allow_stealing)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:189
Parameters
- pika::threads::policies::queue_holder_numa:: ThreadQueue* receiver
- std::size_t qidx
- std::size_t& added
- bool stealing
- bool allow_stealing
bool add_new_HP(
pika::threads::policies::queue_holder_numa::
ThreadQueue* receiver,
std::size_t qidx,
std::size_t& added,
bool stealing,
bool allow_stealing)
bool add_new_HP(
pika::threads::policies::queue_holder_numa::
ThreadQueue* receiver,
std::size_t qidx,
std::size_t& added,
bool stealing,
bool allow_stealing)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:158
Parameters
- pika::threads::policies::queue_holder_numa:: ThreadQueue* receiver
- std::size_t qidx
- std::size_t& added
- bool stealing
- bool allow_stealing
void debug_info()
void debug_info()Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:293
bool dump_suspended_threads(std::size_t,
std::int64_t&,
bool)
bool dump_suspended_threads(std::size_t,
std::int64_t&,
bool)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:286
Parameters
- std::size_t
- std::int64_t&
- bool
bool enumerate_threads(
const util::function<bool(thread_id_type)>& f,
pika::threads::thread_schedule_state state)
const
bool enumerate_threads(
const util::function<bool(thread_id_type)>& f,
pika::threads::thread_schedule_state state)
constDeclared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:247
Parameters
- const util::function<bool(thread_id_type)>& f
- pika::threads::thread_schedule_state state
inline std::size_t get_new_tasks_queue_length()
const
inline std::size_t get_new_tasks_queue_length()
constDeclared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:220
inline bool get_next_thread(
std::size_t qidx,
threads::thread_id_ref_type& thrd,
bool stealing,
bool core_stealing)
inline bool get_next_thread(
std::size_t qidx,
threads::thread_id_ref_type& thrd,
bool stealing,
bool core_stealing)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:129
Parameters
- std::size_t qidx
- threads::thread_id_ref_type& thrd
- bool stealing
- bool core_stealing
inline bool get_next_thread_HP(
std::size_t qidx,
threads::thread_id_ref_type& thrd,
bool stealing,
bool core_stealing)
inline bool get_next_thread_HP(
std::size_t qidx,
threads::thread_id_ref_type& thrd,
bool stealing,
bool core_stealing)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:98
Parameters
- std::size_t qidx
- threads::thread_id_ref_type& thrd
- bool stealing
- bool core_stealing
inline std::int64_t get_thread_count(
pika::threads::thread_schedule_state state =
thread_schedule_state::unknown,
pika::threads::thread_priority priority =
thread_priority::default_) const
inline std::int64_t get_thread_count(
pika::threads::thread_schedule_state state =
thread_schedule_state::unknown,
pika::threads::thread_priority priority =
thread_priority::default_) constDeclared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:229
Parameters
- pika::threads::thread_schedule_state state = thread_schedule_state::unknown
- pika::threads::thread_priority priority = thread_priority::default_
void increment_num_pending_accesses(
std::size_t = 1)
void increment_num_pending_accesses(
std::size_t = 1)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:279
Parameters
- std::size_t = 1
void increment_num_pending_misses(std::size_t = 1)
void increment_num_pending_misses(std::size_t = 1)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:278
Parameters
- std::size_t = 1
void increment_num_stolen_from_pending(
std::size_t = 1)
void increment_num_stolen_from_pending(
std::size_t = 1)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:280
Parameters
- std::size_t = 1
void increment_num_stolen_from_staged(
std::size_t = 1)
void increment_num_stolen_from_staged(
std::size_t = 1)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:281
Parameters
- std::size_t = 1
void increment_num_stolen_to_pending(
std::size_t = 1)
void increment_num_stolen_to_pending(
std::size_t = 1)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:282
Parameters
- std::size_t = 1
void increment_num_stolen_to_staged(
std::size_t = 1)
void increment_num_stolen_to_staged(
std::size_t = 1)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:283
Parameters
- std::size_t = 1
void init(std::size_t domain, std::size_t queues)
void init(std::size_t domain, std::size_t queues)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:77
Parameters
- std::size_t domain
- std::size_t queues
void on_error(std::size_t,
const std::exception_ptr&)
void on_error(std::size_t,
const std::exception_ptr&)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:302
Parameters
- std::size_t
- const std::exception_ptr&
void on_start_thread(std::size_t)
void on_start_thread(std::size_t)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:300
Parameters
void on_stop_thread(std::size_t)
void on_stop_thread(std::size_t)Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:301
Parameters
queue_holder_numa<QueueType>()
queue_holder_numa<QueueType>()Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:61
inline std::size_t size() const
inline std::size_t size() constDeclared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:86
inline pika::threads::policies::
queue_holder_numa::ThreadQueue*
thread_queue(std::size_t id) const
inline pika::threads::policies::
queue_holder_numa::ThreadQueue*
thread_queue(std::size_t id) constDeclared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:92
Parameters
- std::size_t id
~queue_holder_numa<QueueType>()
~queue_holder_numa<QueueType>()Declared at: libs/pika/schedulers/include/pika/schedulers/queue_holder_numa.hpp:68