hpx/distribution_policies/default_distribution_policy.hpp
hpx/distribution_policies/default_distribution_policy.hpp#
Defined in header hpx/distribution_policies/default_distribution_policy.hpp.
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace hpx
-
namespace components
Variables
-
static const default_distribution_policy default_layout = {}#
A predefined instance of the default distribution_policy. It will represent the local locality and will place all items to create here.
-
struct default_distribution_policy#
- #include <default_distribution_policy.hpp>
This class specifies the parameters for a simple distribution policy to use for creating (and evenly distributing) a given number of items on a given set of localities.
Public Functions
-
constexpr default_distribution_policy() = default#
Default-construct a new instance of a default_distribution_policy. This policy will represent one locality (the local locality).
-
inline default_distribution_policy operator()(std::vector<id_type> const &locs) const#
Create a new default_distribution policy representing the given set of localities.
- Parameters
locs – [in] The list of localities the new instance should represent
-
inline default_distribution_policy operator()(std::vector<id_type> &&locs) const#
Create a new default_distribution policy representing the given set of localities.
- Parameters
locs – [in] The list of localities the new instance should represent
-
inline default_distribution_policy operator()(id_type const &loc) const#
Create a new default_distribution policy representing the given locality
- Parameters
loc – [in] The locality the new instance should represent
-
template<typename Component, typename ...Ts>
inline hpx::future<hpx::id_type> create(Ts&&... vs) const# Create one object on one of the localities associated by this policy instance
Note
This function is part of the placement policy implemented by this class
- Parameters
vs – [in] The arguments which will be forwarded to the constructor of the new object.
- Returns
A future holding the global address which represents the newly created object
-
template<typename Component, typename ...Ts>
inline hpx::future<std::vector<bulk_locality_result>> bulk_create(std::size_t count, Ts&&... vs) const# Create multiple objects on the localities associated by this policy instance
Note
This function is part of the placement policy implemented by this class
- Parameters
count – [in] The number of objects to create
vs – [in] The arguments which will be forwarded to the constructors of the new objects.
- Returns
A future holding the list of global addresses that represent the newly created objects
-
template<typename Action, typename ...Ts>
inline async_result<Action>::type async(launch policy, Ts&&... vs) const#
-
template<typename Action, typename Callback, typename ...Ts>
inline async_result<Action>::type async_cb(launch policy, Callback &&cb, Ts&&... vs) const# Note
This function is part of the invocation policy implemented by this class
-
template<typename Action, typename Continuation, typename ...Ts>
inline bool apply(Continuation &&c, launch policy, Ts&&... vs) const# Note
This function is part of the invocation policy implemented by this class
-
template<typename Action, typename ...Ts>
inline bool apply(threads::thread_priority priority, Ts&&... vs) const#
-
template<typename Action, typename Continuation, typename Callback, typename ...Ts>
inline bool apply_cb(Continuation &&c, launch policy, Callback &&cb, Ts&&... vs) const# Note
This function is part of the invocation policy implemented by this class
-
template<typename Action, typename Callback, typename ...Ts>
inline bool apply_cb(launch policy, Callback &&cb, Ts&&... vs) const#
-
template<typename Action>
struct async_result# - #include <default_distribution_policy.hpp>
Note
This function is part of the invocation policy implemented by this class
-
constexpr default_distribution_policy() = default#
-
static const default_distribution_policy default_layout = {}#
-
namespace components