Access/Concurrency Control for executor pool implementation.
More...
#include <executor_pools_management.hpp>
|
template<typename Interface , typename Pool , typename... Ts> |
static void | init (size_t number_of_executors, Ts ... executor_args) |
|
template<typename Interface , typename Pool , typename... Ts> |
static void | init_all_executor_pools (size_t number_of_executors, Ts ... executor_args) |
|
template<typename Interface , typename Pool , typename... Ts> |
static void | init_executor_pool (size_t pool_id, size_t number_of_executors, Ts ... executor_args) |
|
template<typename Interface , typename Pool > |
static void | cleanup () |
|
template<typename Interface , typename Pool > |
static std::tuple< Interface &, size_t > | get_interface (const size_t gpu_id) |
|
template<typename Interface , typename Pool > |
static void | release_interface (size_t index, const size_t gpu_id) noexcept |
|
template<typename Interface , typename Pool > |
static bool | interface_available (size_t load_limit, const size_t gpu_id) noexcept |
|
template<typename Interface , typename Pool > |
static size_t | get_current_load (const size_t gpu_id=0) noexcept |
|
template<typename Interface , typename Pool > |
static size_t | get_next_device_id (const size_t number_gpus) noexcept |
|
template<typename Interface , typename Pool > |
static void | set_device_selector (std::function< void(size_t)> select_gpu_function) |
|
template<typename Interface , typename Pool > |
static void | select_device (size_t gpu_id) |
|
Access/Concurrency Control for executor pool implementation.
◆ ~executor_pool()
cppuddle::executor_recycling::detail::executor_pool::~executor_pool |
( |
| ) |
|
|
default |
◆ executor_pool() [1/2]
cppuddle::executor_recycling::detail::executor_pool::executor_pool |
( |
executor_pool const & |
other | ) |
|
|
delete |
◆ executor_pool() [2/2]
cppuddle::executor_recycling::detail::executor_pool::executor_pool |
( |
executor_pool && |
other | ) |
|
|
delete |
◆ cleanup()
template<typename Interface , typename Pool >
static void cppuddle::executor_recycling::detail::executor_pool::cleanup |
( |
| ) |
|
|
inlinestatic |
◆ get_current_load()
template<typename Interface , typename Pool >
static size_t cppuddle::executor_recycling::detail::executor_pool::get_current_load |
( |
const size_t |
gpu_id = 0 | ) |
|
|
inlinestaticnoexcept |
◆ get_interface()
template<typename Interface , typename Pool >
static std::tuple< Interface &, size_t > cppuddle::executor_recycling::detail::executor_pool::get_interface |
( |
const size_t |
gpu_id | ) |
|
|
inlinestatic |
◆ get_next_device_id()
template<typename Interface , typename Pool >
static size_t cppuddle::executor_recycling::detail::executor_pool::get_next_device_id |
( |
const size_t |
number_gpus | ) |
|
|
inlinestaticnoexcept |
◆ init()
template<typename Interface , typename Pool , typename... Ts>
static void cppuddle::executor_recycling::detail::executor_pool::init |
( |
size_t |
number_of_executors, |
|
|
Ts ... |
executor_args |
|
) |
| |
|
inlinestatic |
◆ init_all_executor_pools()
template<typename Interface , typename Pool , typename... Ts>
static void cppuddle::executor_recycling::detail::executor_pool::init_all_executor_pools |
( |
size_t |
number_of_executors, |
|
|
Ts ... |
executor_args |
|
) |
| |
|
inlinestatic |
◆ init_executor_pool()
template<typename Interface , typename Pool , typename... Ts>
static void cppuddle::executor_recycling::detail::executor_pool::init_executor_pool |
( |
size_t |
pool_id, |
|
|
size_t |
number_of_executors, |
|
|
Ts ... |
executor_args |
|
) |
| |
|
inlinestatic |
◆ interface_available()
template<typename Interface , typename Pool >
static bool cppuddle::executor_recycling::detail::executor_pool::interface_available |
( |
size_t |
load_limit, |
|
|
const size_t |
gpu_id |
|
) |
| |
|
inlinestaticnoexcept |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ release_interface()
template<typename Interface , typename Pool >
static void cppuddle::executor_recycling::detail::executor_pool::release_interface |
( |
size_t |
index, |
|
|
const size_t |
gpu_id |
|
) |
| |
|
inlinestaticnoexcept |
◆ select_device()
template<typename Interface , typename Pool >
static void cppuddle::executor_recycling::detail::executor_pool::select_device |
( |
size_t |
gpu_id | ) |
|
|
inlinestatic |
◆ set_device_selector()
template<typename Interface , typename Pool >
static void cppuddle::executor_recycling::detail::executor_pool::set_device_selector |
( |
std::function< void(size_t)> |
select_gpu_function | ) |
|
|
inlinestatic |
The documentation for this class was generated from the following file: