<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Okay, I didn't see any note on the PMIx 2.1 page about versions
of slurm it was combatible with so I assumed all of them. My
bad. Thanks for the correction and the help. I just naively used
the rpm spec that was packaged with PMIx which does enable the
legacy support. It seems best then to let PMIx handle pmix solely
and let slurm handle the rest. Thanks!</p>
<p>Am I right in reading that you don't have to build slurm against
PMIx? So it just interoperates with it fine if you just have it
installed and specify pmix as the launch option? That's neat.<br>
</p>
<p>-Paul Edmon-<br>
</p>
<br>
<div class="moz-cite-prefix">On 11/28/2017 6:11 PM, Philip Kovacs
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:1058339385.5219349.1511910667338@mail.yahoo.com">
<div style="color:#000; background-color:#fff;
font-family:Helvetica Neue, Helvetica, Arial, Lucida Grande,
sans-serif;font-size:13px">
<div id="yui_3_16_0_ym19_1_1511904995913_53348">Actually if
you're set on installing pmix/pmix-devel from the rpms and
then configuring slurm manually,</div>
<div id="yui_3_16_0_ym19_1_1511904995913_53348">you could just
move the pmix-installed versions of libpmi.so* and libpmi2.so*
to a safe place, configure</div>
<div id="yui_3_16_0_ym19_1_1511904995913_53348">and install
slurm which will drop in its versions pf those libs and then
either use the slurm versions or move</div>
<div id="yui_3_16_0_ym19_1_1511904995913_53348" dir="ltr">the
the pmix versions of libpmi and libpmi2 back into place in
/usr/lib64. </div>
<div class="qtdSeparateBR"><br>
<br>
</div>
<div class="yahoo_quoted" style="display: block;">
<div style="font-family: Helvetica Neue, Helvetica, Arial,
Lucida Grande, sans-serif; font-size: 13px;">
<div style="font-family: HelveticaNeue, Helvetica Neue,
Helvetica, Arial, Lucida Grande, sans-serif; font-size:
16px;">
<div dir="ltr"><font size="2" face="Arial"> On Tuesday,
November 28, 2017 5:32 PM, Philip Kovacs
<a class="moz-txt-link-rfc2396E" href="mailto:pkdevel@yahoo.com"><pkdevel@yahoo.com></a> wrote:<br>
</font></div>
<br>
<br>
<div class="y_msg_container">
<div id="yiv0414012041">
<div>
<div
style="color:#000;background-color:#fff;font-family:Helvetica
Neue, Helvetica, Arial, Lucida Grande,
sans-serif;font-size:13px;">
<div id="yiv0414012041">
<div
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_19392">
<div style="color:rgb(0, 0,
0);background-color:rgb(255, 255,
255);font-size:13px;"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_19391">
<div
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_14678">This
issue is that pmi 2.0+ provides a
"backward compatibility" feature,
enabled by default, which installs</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_19393">both
libpmi.so and libpmi2.so in addition to
libpmix.so. The route with the least
friction for you would probably</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_19394">be
to uninstall pmix, then install slurm
normally, letting it install its libpmi
and libpmi2. Next configure and compile</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_20421">a
custom pmix with that backward </span>feature
_disabled_, so it only installs
libpmix.so. Slurm will "see" the pmix
library</div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style="">after you install it and load it
via its plugin when you use --mpi=pmix.
Again, just use the Slurm pmi and pmi2
and </div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style="">install pmix separately with the
backward compatible option disabled.</div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span><br>
</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_20590">There
is a packaging issue there in which two
packages are trying to install their own
versions of the same files. </span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span>That s</span>hould be
brought to attention of the packages.
Meantime you can work around it.</div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span><br>
</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span>For PMIX:</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><span><br>
</span></div>
<div dir="ltr"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_13882"
style=""><font
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_20598"
face="Courier New, courier, monaco,
monospace, sans-serif">./configure
--disable-pmi-backward-compatibility //
... etc ...</font></div>
<div class="yiv0414012041qtdSeparateBR"
id="yiv0414012041yui_3_16_0_ym19_1_1511904995913_19395"
style=""><br clear="none">
</div>
</div>
</div>
</div>
<div>
<div style="font-family:Helvetica Neue,
Helvetica, Arial, Lucida Grande,
sans-serif;font-size:13px;">
<div style="font-family:HelveticaNeue,
Helvetica Neue, Helvetica, Arial, Lucida
Grande, sans-serif;font-size:16px;">
<div class="yiv0414012041qtdSeparateBR"><br>
<br>
</div>
<div class="yiv0414012041yqt7102444885"
id="yiv0414012041yqtfd45512">
<div dir="ltr"><font size="2" face="Arial">
On Tuesday, November 28, 2017 4:44 PM,
Artem Polyakov
<a class="moz-txt-link-rfc2396E" href="mailto:artpol84@gmail.com"><artpol84@gmail.com></a> wrote:<br
clear="none">
</font></div>
<br clear="none">
<br clear="none">
<div class="yiv0414012041y_msg_container">
<div id="yiv0414012041">
<div>
<div dir="ltr">Hello, Paul
<div><br clear="none">
</div>
<div>Please see below.<br
clear="none">
<div
class="yiv0414012041gmail_extra"><br
clear="none">
<div
class="yiv0414012041gmail_quote">2017-11-28
13:13 GMT-08:00 Paul Edmon <span
dir="ltr"><<a
rel="nofollow"
shape="rect"
ymailto="mailto:pedmon@cfa.harvard.edu"
target="_blank"
href="mailto:pedmon@cfa.harvard.edu"
moz-do-not-send="true">pedmon@cfa.harvard.edu</a>></span>:<br
clear="none">
<blockquote
class="yiv0414012041gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex;">So
in an effort to future
proof ourselves we are
trying to build Slurm
against PMIx, but when I
tried to do so I got the
following:<br clear="none">
<br clear="none">
Transaction check error:<br
clear="none">
file
/usr/lib64/libpmi.so from
install of
slurm-17.02.9-1fasrc02.el7.cen
tos.x86_64 conflicts with
file from package
pmix-2.0.2-1.el7.centos.x86_64<br
clear="none">
file
/usr/lib64/libpmi2.so from
install of
slurm-17.02.9-1fasrc02.el7.cen
tos.x86_64 conflicts with
file from package
pmix-2.0.2-1.el7.centos.x86_64<br
clear="none">
<br clear="none">
This is with compiling
Slurm with the
--with-pmix=/usr option.
A few things:<br
clear="none">
<br clear="none">
1. I'm surprised when I
tell it to use PMIx it
still builds its own
versions of libpmi and
pmi2 given that PMIx
handles that now.<br
clear="none">
</blockquote>
<div><br clear="none">
</div>
<div>PMIx is a plugin and
from multiple perspectives
it makes sense to keep the
other versions available
(i.e. backward compat or
perf comparison) </div>
<div> </div>
<blockquote
class="yiv0414012041gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex;">
<br clear="none">
2. Does this mean I have
to install PMIx in a
nondefault location? If
so how does that work with
user build codes? I'd
rather not have multiple
versions of PMI around for
people to build against.<br
clear="none">
</blockquote>
<div>When we introduced PMIx
it was in the beta stage
and we didn't want to
build against it by
default. Now it probably
makes sense to assume
--with-pmix by default.</div>
<div>I'm also thinking that
we might need to solve it
at the packagers level by
distributing "slurm-pmix"
package that is builded
and depends on the pmix
package that is currently
shipped with particular
Linux distro.</div>
<div> </div>
<blockquote
class="yiv0414012041gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex;">
<br clear="none">
3. What is the right way
of building PMIx and Slurm
such that they
interoperate properly?<br
clear="none">
</blockquote>
<div>As for now it is better
to have a PMIx installed
in the well-known
location. And then build
your MPIs or other apps
against this PMIx
installation.</div>
<div>Starting (I think) from
PMIx v2.1 we will have a
cross-version support that
will give some flexibility
about what installation to
use with application,</div>
<div> </div>
<blockquote
class="yiv0414012041gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex;">
<br clear="none">
Suffice it to say little
to no documentation exists
on how to properly this,
so any guidance would be
much appreciated.</blockquote>
<div>Indeed we have some
problems with the
documentation as PMIx
technology is relatively
new. Hopefully we can fix
this in near future.</div>
<div>Being the original
developer of the PMIx
plugin I'll be happy to
answer any questions and
help to resolve the
issues.</div>
<div
class="yiv0414012041yqt4550724288"
id="yiv0414012041yqtfd41798">
<div><br clear="none">
</div>
<div><br clear="none">
</div>
<div> </div>
</div>
<blockquote
class="yiv0414012041gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex;"><span
class="yiv0414012041gmail-HOEnZb"></span>
<div
class="yiv0414012041yqt4550724288"
id="yiv0414012041yqtfd43154"><br clear="none">
<br clear="none">
-Paul Edmon-</div>
<br clear="none">
<br clear="none">
<br clear="none">
</blockquote>
</div>
<br clear="none">
<br clear="all">
<div><br clear="none">
</div>
-- <br clear="none">
<div
class="yiv0414012041gmail_signature">С
Уважением, Поляков Артем
Юрьевич<br clear="none">
Best regards, Artem Y.
Polyakov</div>
<div
class="yiv0414012041yqt4550724288"
id="yiv0414012041yqtfd01302">
</div>
</div>
</div>
</div>
</div>
</div>
<br clear="none">
<br clear="none">
</div>
</div>
</div>
<div class="yiv0414012041yqt7102444885"
id="yiv0414012041yqtfd28013"> </div>
</div>
<div class="yiv0414012041yqt7102444885"
id="yiv0414012041yqtfd78525"> </div>
</div>
</div>
</div>
</div>
<br>
<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</body>
</html>