Re: [Beowulf] PMIX and Julia?

2018-11-20 Thread Chris Samuel
On Tuesday, 20 November 2018 7:53:30 AM AEDT Prentice Bisbal via Beowulf 
wrote:

> Conceptually, I don't think there's
> anything preventing it from being used for Julia. In reality, it depends
> on how general the API is.

Yeah, if you're launched via Slurm (for instance) you could have access to 
PMIx (various versions), PMI2, PMI1 (if you're earlier than 18.08) or none of 
the above..   For other resource managers the choices may be different.

Much easier to layer yourself on top of MPI and let it handle that for you! 
:-)

All the best,
Chris
-- 
 Chris Samuel  :  http://www.csamuel.org/  :  Melbourne, VIC



___
Beowulf mailing list, Beowulf@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf


Re: [Beowulf] PMIX and Julia?

2018-11-19 Thread Prentice Bisbal via Beowulf

On 11/18/18 3:16 PM, Chris Samuel wrote:


On Monday, 19 November 2018 6:35:56 AM AEDT John Hearns via Beowulf wrote:


What I am really asking is will pmix be totally necessary when running on
near-exascale systems, or am I missing something? My thoughts are should
the Julia world be looking at mpix adaptations? If someone with a clue
about pmix could enlighten me I would be grateful.

My (limited) understanding of this is that PMI* is an MPI wire-up protocol, in
other words a mechanism for the MPI ranks to discover each other, set up
communications and also talk to the resource scheduler (if present).
That is my understanding, too, PMI is meant to be an abstraction layer 
between the resource manager and the different parallel processes. I 
would imagine if this abstraction is good for MPI, it could be good for 
other paradigms, like Julia, too. Conceptually, I don't think there's 
anything preventing it from being used for Julia. In reality, it depends 
on how general the API is. That's based on my understanding of PMI, of 
which I am admittedly *not* an expert.


There's a handy little description of PMI (v2 in this case) here:

https://wiki.mpich.org/mpich/index.php/PMI_v2_API

The PMIx website (along with standards documents etc) here:

https://pmix.org/


Here's another good paper on PMI:

http://www.mcs.anl.gov/papers/P1760.pdf



My instinct is that it might be better for Julia to sit on MPI and let it
handle this for it, rather than have to know about PMI2/PMIx itself..

All the best!
Chris

___
Beowulf mailing list, Beowulf@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf


Re: [Beowulf] PMIX and Julia?

2018-11-18 Thread Chris Samuel
On Monday, 19 November 2018 6:35:56 AM AEDT John Hearns via Beowulf wrote:

> What I am really asking is will pmix be totally necessary when running on
> near-exascale systems, or am I missing something? My thoughts are should
> the Julia world be looking at mpix adaptations? If someone with a clue
> about pmix could enlighten me I would be grateful.

My (limited) understanding of this is that PMI* is an MPI wire-up protocol, in 
other words a mechanism for the MPI ranks to discover each other, set up 
communications and also talk to the resource scheduler (if present).

There's a handy little description of PMI (v2 in this case) here:

https://wiki.mpich.org/mpich/index.php/PMI_v2_API

The PMIx website (along with standards documents etc) here:

https://pmix.org/

My instinct is that it might be better for Julia to sit on MPI and let it 
handle this for it, rather than have to know about PMI2/PMIx itself..

All the best!
Chris
-- 
 Chris Samuel  :  http://www.csamuel.org/  :  Melbourne, VIC



___
Beowulf mailing list, Beowulf@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf


[Beowulf] PMIX and Julia?

2018-11-18 Thread John Hearns via Beowulf
I am really going to show my ignorance here. I just flicked through the
excellent OpenMPI BoF slides from SC18
https://www.open-mpi.org/papers/sc-2018/Open-MPI-SC18-BOF.pdf
This reminded me of something I have at the back of my mind. Clearly pmix
is intimately associated with MPI.
On the other hand I am a fan of the Julia language, which has its own
concepts of parallelism.
However for a cluster spanning across multiple machines Julia currently
assumes passwordless ssh will be used
https://docs.julialang.org/en/v1/manual/parallel-computing/index.html#Starting-and-managing-worker-processes-1

Oooh - a bit of googling reveals that MPI can be used to communicate with
the processes
https://github.com/JuliaParallel/MPI.jl/blob/master/test/test_cman_mpi.jl

What I am really asking is will pmix be totally necessary when running on
near-exascale systems, or am I missing something? My thoughts are should
the Julia world be looking at mpix adaptations?
If someone with a clue about pmix could enlighten me I would be grateful.
___
Beowulf mailing list, Beowulf@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit 
http://www.beowulf.org/mailman/listinfo/beowulf