hpx::collectives::gather_here#
Defined in header hpx/collectives.hpp.
See Public API for a list of names and headers that are part of the public HPX API.
See also:
-
template<typename T>
hpx::future<std::vector<decay_t<T>>> hpx::collectives::gather_here(char const *basename, T &&result, num_sites_arg num_sites = num_sites_arg(), this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())# Gather a set of values from different call sites
This function receives a set of values from all call sites operating on the given base name.
- Parameters
basename – The base name identifying the gather operation
result – The value to transmit to the central gather point from this call site.
num_sites – The number of participating sites (default: all localities).
this_site – The sequence number of this invocation (usually the locality id). This value is optional and defaults to whatever hpx::get_locality_id() returns.
generation – The generational counter identifying the sequence number of the gather operation performed on the given base name. This is optional and needs to be supplied only if the gather operation on the given base name has to be performed more than once. The generation number (if given) must be a positive number greater than zero.
- Returns
This function returns a future holding a vector with all gathered values. It will become ready once the gather operation has been completed.
-
template<typename T>
hpx::future<std::vector<decay_t<T>>> hpx::collectives::gather_here(communicator comm, T &&result, this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())# Gather a set of values from different call sites
This function receives a set of values from all call sites operating on the given base name.
Gather a set of values from different call sites
This function receives a set of values from all call sites operating on the given base name.
Note
The generation values from corresponding gather_here and gather_there have to match.
Note
The generation values from corresponding gather_here and gather_there have to match.
- Parameters
comm – A communicator object returned from create_communicator
result – The value to transmit to the central gather point from this call site.
this_site – The sequence number of this invocation (usually the locality id). This value is optional and defaults to whatever hpx::get_locality_id() returns.
generation – The generational counter identifying the sequence number of the gather operation performed on the given base name. This is optional and needs to be supplied only if the gather operation on the given base name has to be performed more than once. The generation number (if given) must be a positive number greater than zero.
comm – A communicator object returned from create_communicator
result – The value to transmit to the central gather point from this call site.
generation – The generational counter identifying the sequence number of the gather operation performed on the given base name. This is optional and needs to be supplied only if the gather operation on the given base name has to be performed more than once. The generation number (if given) must be a positive number greater than zero.
this_site – The sequence number of this invocation (usually the locality id). This value is optional and defaults to whatever hpx::get_locality_id() returns.
- Returns
This function returns a future holding a vector with all gathered values. It will become ready once the gather operation has been completed.
- Returns
This function returns a future holding a vector with all gathered values. It will become ready once the gather operation has been completed.
Warning
doxygenfunction: Unable to resolve function “hpx::collectives::gather_here” with arguments (hpx::launch::sync_policy, char const*, T&&, num_sites_arg, this_site_arg, generation_arg) in doxygen xml output for project “hpx” from directory: ../hpx_autodoc. Potential matches:
- template<typename T> decltype(auto) gather_here(hpx::launch::sync_policy, char const *basename, T &&result, num_sites_arg num_sites = num_sites_arg(), this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
- template<typename T> decltype(auto) gather_here(hpx::launch::sync_policy, communicator comm, T &&result, this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
- template<typename T> hpx::future<std::vector<decay_t<T>>> gather_here(char const *basename, T &&result, num_sites_arg num_sites = num_sites_arg(), this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
- template<typename T> hpx::future<std::vector<decay_t<T>>> gather_here(communicator comm, T &&result, this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
Warning
doxygenfunction: Unable to resolve function “hpx::collectives::gather_here” with arguments (hpx::launch::sync_policy, communicator, T&&, this_site_arg, generation_arg) in doxygen xml output for project “hpx” from directory: ../hpx_autodoc. Potential matches:
- template<typename T> decltype(auto) gather_here(hpx::launch::sync_policy, char const *basename, T &&result, num_sites_arg num_sites = num_sites_arg(), this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
- template<typename T> decltype(auto) gather_here(hpx::launch::sync_policy, communicator comm, T &&result, this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
- template<typename T> hpx::future<std::vector<decay_t<T>>> gather_here(char const *basename, T &&result, num_sites_arg num_sites = num_sites_arg(), this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())
- template<typename T> hpx::future<std::vector<decay_t<T>>> gather_here(communicator comm, T &&result, this_site_arg this_site = this_site_arg(), generation_arg generation = generation_arg())