Ran into an issue where an HPX action that I've been executing under
hpx::parallel::transform (in lieu of hpx::parallel::for_each) hangs on the
hpx::finalize() call. Are there any troubleshooting or debugging techniques
that could be used to figure out how to resolve this issue? I'm using 1.0.0.
static void run(const size_t idx) {
hpx::cout << idx << hpx::endl;
}
HPX_PLAIN_ACTION(run, run_action);
int hpx_main(int argc, char **argv) {
std::vector<size_t> idx_list;
// fill idx_list with numbers to print ...
std::vector< hpx::future<void> > futures;
futures.reserve(idx_list.size());
hpx::parallel::transform(
hpx::parallel::par,
std::begin(idx_list),
std::end(idx_list),
[&localities, &distarr] (idx) {
auto loc = localities[distarr.get_partition(idx)];
return hpx::async<run_action>(loc, idx);
});
hpx::wait_all(futures);
// printing debug statements after the hpx::wait_all demonstrate the
hpx::wait_all has completed successfully
hpx::finalize();
}
Any help or some pointers/tips would be greatly appreciated!
Chris
_______________________________________________
hpx-users mailing list
[email protected]
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users