Skip to content
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

NA SM: fix NA_NO_BLOCK progress path to be aligned with notification path #378

Open
mdorier opened this issue Jul 16, 2020 · 2 comments
Open

Comments

@mdorier
Copy link

mdorier commented Jul 16, 2020

I know busy-spinning is meant for networks like GNI, where blocking is inefficient, but if I try it with na+sm, it simply doesn't work.

I do this on the server:

hg_opt.na_init_info.progress_mode = NA_NO_BLOCK;

then pass this hg_opt to margo_init_opt so it gets passed to Mercury when MErcury is initialized. For now I'm not using busy-spinning on the client side (the client is initialized normally).

When the client looks up the server's address, I get the following error:

# NA -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/na/na_sm.c:2536
 # na_sm_addr_event_send(): sendmsg() failed (No such file or directory)
# NA -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/na/na_sm.c:2279
 # na_sm_addr_lookup_insert_cb(): Could not send addr events
# NA -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/na/na_sm.c:2210
 # na_sm_addr_map_insert(): Could not execute insertion callback
# NA -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/na/na_sm.c:3435
 # na_sm_addr_lookup(): Could not insert new address
# HG -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/mercury_core.c:1220
 # hg_core_addr_lookup(): Could not lookup address na+sm://5729/0 (NA_NOENTRY)
# HG -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/mercury_core.c:3850
 # HG_Core_addr_lookup2(): Could not lookup address
# HG -- Error -- /tmp/mdorier/spack-stage/spack-stage-mercury-2.0.0rc1-uca52ro7tw7sm5lm5tgitbcmyl2ti2rs/spack-src/src/mercury.c:1490
 # HG_Addr_lookup2(): Could not lookup na+sm://5729/0 (HG_NOENTRY)
@mdorier
Copy link
Author

mdorier commented Jul 16, 2020

Note: I tested this with Mercury 2.0.0rc1 and 2.0.0a1.

@soumagne
Copy link
Member

@mdorier yes you currently need to set both the server and the client in that mode. It would not work otherwise currently, this mode is special and bypasses the notification mechanism.

@soumagne soumagne changed the title Busy spinning option not working with na+sm NA SM: using NA_NO_BLOCK option requires peers to all be initialized in that mode Jul 16, 2020
@soumagne soumagne changed the title NA SM: using NA_NO_BLOCK option requires peers to all be initialized in that mode NA SM: fix NA_NO_BLOCK progress path to be aligned with notification path Aug 20, 2020
@soumagne soumagne added this to the mercury-2.1.0 milestone Oct 23, 2020
@soumagne soumagne modified the milestones: mercury-2.1.0, future Oct 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants