On 02/03/2014 03:59 PM, Ralph Castain wrote:
Very strange - even if you kill the job with SIGTERM, or have processes that 
segfault, OMPI should clean itself up and remove those session directories. 
Granted, the 1.6 series isn't as good about doing so as the 1.7 series, but it 
at least to-date has done pretty well.

Ok, one more information here that may matter: All sequential tests are launched *without* mpiexec... I don't know if the "cleanup" phase is done by mpiexec or the binaries...


Best I can suggest for now is to do the following in your test script:

(1) set TMPDIR=</tmp/regression>

(2) run your tests

(3) rm -rf /tmp/regression/*

That will ensure you only blow away the session dirs from your regression 
tests. Hopefully, you'll find the directory empty more often than not...

Ok, I just added:

find /tmp/openmpi-sessions-${USER}* -maxdepth 1 -type f -exec rm {} \;

which should delete files that shouldn't exists... ;-)

But, IMHO, I still think OpenMPI should "choose" another directory name if it can't create it because a poor file exists!

How can all users be aware that they have to cleanup such files?

Maybe a good compromise would be to have the error message to tell there is a file with the same name of the directory chosen?

Or add a new entry to the FAQ to help users find the workaround you proposed... ;-)

thanks again!

Eric


HTH
Ralph

On Feb 3, 2014, at 12:31 PM, Eric Chamberland 
<eric.chamberl...@giref.ulaval.ca> wrote:

Hi,

On 02/03/2014 03:09 PM, Ralph Castain wrote:
OMPI will error out in that case, as you originally reported. What seems to be 
happening is that you have a bunch of stale session directories, but I'm 
puzzled because the creation dates are so current - for whatever reason, OMPI 
seems to be getting the same jobid much more often than it should. Can you tell 
me something about the environment - e.g., is it managed or just using hostfile?

This computer is used about 11 times a day to launch about 1500 executions on 
our in-house (finite element) code.

We do launch at most 12 single process executions at the same time, but we use 
PETSc, which always initialize the MPI environment...

Also, we are launching some tests which use between 2 to 128 processes (on the 
same computer) just to ensure proper code testing.  In fact, performance is not 
quit an issue in these 128 processes tests and we set the following environment 
variable:

export OMPI_MCA_mpi_yield_when_idle=1

because we encountered timeout problems before...

The whole testing lasts about 1 hour and the result is used to give a feed-back for users 
who "pushed" modifications to the code....

So I would add: sometime the tests may be interrupted by segfaults, "kill 
-TERM" or anything you can imagine...  The problem now is that it won't even start 
if a mere file exists...

I can flush those files right now, but I am almost sure they will reappear it the 
following days, leading to false "bad results" for the tests... and I will have 
to setup a cleanup procedure before launching all the tests... But that will not prevent 
the fact that those files may be created while running the firsts of the 1500 tests and 
have 1 or some of the rest to fail....

I hope this is the information you wanted... Is it?

Thanks,

Eric




On Feb 3, 2014, at 12:00 PM, Eric Chamberland 
<eric.chamberl...@giref.ulaval.ca> wrote:

On 02/03/2014 02:49 PM, Ralph Castain wrote:
Seems rather odd - is your /tmp by any chance network mounted?

No it is a "normal" /tmp:

"cd /tmp; df -h ." gives:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        49G   17G   30G  37% /

And there is plenty of disk space...

I agree it is odd, but how should OpenMPI react when trying to create a 
directory over an existing file name?  I mean what is it programmed to do?

Thanks,

Eric



Reply via email to