New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
First attempt to introduce spmd_block in hpx #2592
First attempt to introduce spmd_block in hpx #2592
Conversation
Fix this compilation error: https://circleci.com/gh/STEllAR-GROUP/hpx/6485 |
Now inspect is not happy with this anymore: https://6489-4455628-gh.circle-artifacts.com/0/tmp/circle-artifacts.ksvyahZ/hpx_inspect_report.html Also, I don't think replacing |
3bfbc34
to
eeecfa8
Compare
28ec500
to
2f10ac3
Compare
2f10ac3
to
249a01d
Compare
tests/unit/parallel/spmd_block.cpp
Outdated
hpx::wait_all(join); | ||
|
||
delete(c1); | ||
delete(c2); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wouldn't it be much easier if you wrote:
boost::atomic<std::size_t> c1(0);
hpx::parallel::v2::define_spmd_block(
num_images, std::move(bulk_test), &c1);
IIRC, there is no need to dynamically allocate the atomic variable.
This PR tries to introduce code related to spmd_block that was presented here http://stellar.cct.lsu.edu/pubs/extending_cpp_with_coarray_semantics_2016.pdf
A major difference in comparaison to what was presented in that paper is that an image is no longer considered as a computation located in an explicit locality. It is now a simple sequential computation able to cooperate with other ones.