Errors in Public Distributed Api for all_to_all and gather_there
AndreyKulikov2022 opened this issue · 2 comments
AndreyKulikov2022 commented
Actual Behavior
In the actual signature of hpx::collectives::gather_there
:
template <typename T>
hpx::future<void> gather_there(communicator fid, T&& local_result,
this_site_arg this_site = this_site_arg(),
generation_arg generation = generation_arg())
the return type differs from the one described in Public Distributed Api:
template <typename T>
hpx::future<std::vector<decay_t<T>>>
gather_there(communicator comm, T&& result,
this_site_arg this_site = this_site_arg(),
generation_arg generation = generation_arg());
The same is true for hpx::collectives::all_to_all
:
template <typename T>
hpx::future<std::vector<std::decay_t<T>>>
all_to_all(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(),
root_site_arg root_site = root_site_arg());
with the wrong local result parameter in Public Api:
template <typename T>
hpx::future<std::vector<T>> all_to_all(communicator fid,
std::vector<T>&& local_result,
this_site_arg this_site = this_site_arg(),
generation_arg generation = generation_arg())
hkaiser commented
@AndreyKulikov2022 thanks for reporting this. @dimitraka could you have a look, please?