Christophe,

could you try the hello_c.c and ring_c.c from the examples directory ?

If it still does not work, then could you give a try to Open MPI from homebrew ?

and if that fixes the issue, can you please post your configure command line ?


Cheers,


Gilles


On 2/17/2018 7:08 AM, Christophe Petit wrote:
Hello Gilles,

I have upgraded to OS X 10.13.3 High Sierra but still have no luck with my issue.

To increase the limit of open files, from this link <https://www.macobserver.com/tips/deep-dive/evade-macos-many-open-files-error-pushing-limits/> I did :

1)*sudo vim /Library/LaunchDaemons/limit.maxfiles.plist*

2) put into this file :
*<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd";> <plist version="1.0"> <dict> <key>Label</key> <string>limit.maxfiles</string> <key>ProgramArguments</key> <array> <string>launchctl</string> <string>limit</string> <string>maxfiles</string> <string>64000</string> <string>524288</string> </array> <key>RunAtLoad</key> <true/> <key>ServiceIPC</key> <false/> </dict> </plist>*
3) *sudo launchctl load -w /Library/LaunchDaemons/limit.maxfiles.plist*

4) Checking by  :

*$ sysctl kern.maxfiles

kern.maxfiles: 524288*

and

*$ launchctl limit maxfiles

maxfiles    64000          524288 *

When I launch ring_c.c executable with :

*mpirun --oversubscribe -np $NB_PROCESS ./a.out *

For a number of processes lower or equal to *142*, it's running fine

For a number of processes greater than *142*, I get the original warning message :

[warn] select: Invalid argument
[warn] select: Invalid argument
[warn] select: Invalid argument
[warn] select: Invalid argument
[warn] select: Invalid argument
[warn] select: Invalid argument
[warn] select: Invalid argument
...

Why the limit is reached at NB_PROCESS > *142* ? what does it corrrespond to ?

ps: I have set "*ulimit -n 10000*"

Regards, Chris


2018-02-15 1:42 GMT+01:00 Gilles Gouaillardet <gilles.gouaillar...@gmail.com <mailto:gilles.gouaillar...@gmail.com>>:

    Christophe,

    I can only test this on OS X 10.13.3 High Sierra, and it could differ
    from Maverick.

    by default

    KA15-002:~ gilles$ ulimit -n
    256

    KA15-002:~ gilles$ ulimit -Hn
    unlimited


    but surprisingly,

    KA15-002:~ gilles$ ulimit -n unlimited
    -bash: ulimit: open files: cannot modify limit: Operation not
    permitted

    KA15-002:~ gilles$ ulimit -n 20000
    -bash: ulimit: open files: cannot modify limit: Invalid argument

    and finally, a lower value works just fine.

    KA15-002:~ gilles$ ulimit -n 10000


    as a consequence, opal_set_max_sys_limits fails in my environment.
    --oversubscribe is mandatory (since there are no 256 cores on my
    laptop), and then

    ulimit -n 10000; mpirun --oversubscribe -np 256 ./ring_c

    works just fine (fwiw, this is an example from Open MPI sources
    examples/ring_c.c)



    So first, I invite you to double check with ulimit -n that your system
    changes are effective.

    How did you build/install Open MPI ?
    The message seems to come from libevent, and Open MPI uses an embedded
    version of libevent.
    It is possible to use an external version at configure time.
    If you are using an external libevent, you might want to try
    rebuilding Open MPI with the embedded one.


    Cheers,

    Gilles

    On Wed, Feb 14, 2018 at 4:57 PM, Christophe Petit
    <christophe.peti...@gmail.com
    <mailto:christophe.peti...@gmail.com>> wrote:
    > Hello,
    >
    > Using Open-Mpi 3.0 and following the tutorial on this link, I
    try to run a
    > MPI code under MacOS 10.9.5 (Mavericks) with a number of process
    equal to
    > 256 : the MPI code allocates for each process a 512x512 2D
    array, so it
    > requires 256*256kB = 64MB of total used memory.
    >
    > My MacOS has 16GB RAM and 8 cores, so it seems to be weird.
    >
    > For a number of process lower than 256 (I tried :
    np=2,4,8,16,32,64,128),
    > there is no problem, execution is good and I get expected results.
    >
    > But for np = 256, I get the following message which repeats itself :
    >
    > $ mpirun -np 256 ./explicitPar
    >
    >     [warn] select: Invalid argument
    >     [warn] select: Invalid argument
    >     [warn] select: Invalid argument
    >      ...
    >
    > I tried also to use -mca option by doing :
    >
    > $ mpirun -mca opal_set_max_sys_limits 1 -np 256 ./explicitPar
    >
    > But I get the same warning message.
    >
    > From this link cited above, I did :
    >
    > $ launchctl limit maxfiles
    >
    >   maxfiles    65536          200000
    >
    > Then, in root user, I created /etc/launchd.conf file and put into :
    >
    > limit maxfiles 65536 200000
    >
    > I restarted the system for the new limits to take effect and
    type as normal
    > user :
    >
    > $ launchctl limit maxfiles
    >
    > maxfiles    65536          200000
    >
    > But unfortunately, these modifications have no effects on the
    MPI function
    > "mpirun" with 256 processes and don't make disappear the warning
    above.
    >
    > On Linux platform, I can launch my MPI code with np = 256,
    without problem,
    > the issue is only happening on MacOS 10.9.5.
    >
    > I didn't get this issue with previous version of Open-MPI.
    >
    > Any idea ? Thanks
    >
    >
    >
    > _______________________________________________
    > users mailing list
    > users@lists.open-mpi.org <mailto:users@lists.open-mpi.org>
    > https://lists.open-mpi.org/mailman/listinfo/users
    <https://lists.open-mpi.org/mailman/listinfo/users>
    _______________________________________________
    users mailing list
    users@lists.open-mpi.org <mailto:users@lists.open-mpi.org>
    https://lists.open-mpi.org/mailman/listinfo/users
    <https://lists.open-mpi.org/mailman/listinfo/users>




_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Reply via email to