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

Uni-directional communication in ElasticManager? #113

Open
marius311 opened this issue Apr 22, 2019 · 2 comments
Open

Uni-directional communication in ElasticManager? #113

marius311 opened this issue Apr 22, 2019 · 2 comments

Comments

@marius311
Copy link
Contributor

marius311 commented Apr 22, 2019

I'm using ClusterManagers.jl on a cluster where the compute nodes (which run workers) can connect to the login nodes (which run the master process), but the other direction is blocked by firewalls. The current code which sets up an ElasticManager first has the workers connecting to master (which works), but then, via code in Base.Distributed, the master establishes a second connection to the workers (which in my case is blocked). I'm wondering:

  1. What's the reason for the extra connection here? (which very naively to me seems unnecessary since we already have one), and

  2. Is there any reason we can't just use the original worker->master connection for all communication? I've been hacking at the code a bit and it kind of seems to work, but was wondering if there's a showstopper I should know about before spending more energy getting it fully working.

Thanks.

@marius311
Copy link
Contributor Author

@vchuravy
Copy link
Member

Hm, I think Distributed assumes that we can can have a connection for each direction. I don't think there is a hard reason for the implementation detail, except that it is easier to think about "receive" vs "send" channel. So yeah I assume you can make that work.

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