Brew, CAJ (Chris) wrote:
> So the question is how should this be handled?
It seems like a no-brainer - use TMPDIR.
It doesn't break anything, it's a well specified standard, and
non-project apps are likely to use it anyway.
Inventing yet-another definition -- or even setting up wrapper scripts
-- when TMPDIR already exists, is used and is available seems pointless.
I've already been asked in the past to define a variable with the path
to a large (10GB+) scratch volume for an experiment, and TMPDIR was
their existing preferred name.
[Note, however, that experiments should use mktemp to carve their own
namespace out of TMPDIR as it may or may not be shared with other users.]
The only reason presented _not_ to use it is that PBS defines this
variable to a PBS spool directory (for this exact intended purpose)
which might cause some sites by surprise. This doesn't seem like a
compelling reason to avoid it; sites can trivially redefine this
variable if necesary.
> It seems like the current LCG standard of setting EDG_WL_SCRATCH but not
> TMPDIR is the worst of both worlds.
EDG_WL_SCRATCH doesn't appear to be standard, or at least, not in very
common use as my YAIM-generated WN environment doesn't define it.
(According to that Savannah transcript, MPI jobs will break if it is
defined with a path to a non-shared volume, as would be the case locally
anyway.)
No, unless there's a compelling reason that no-one's already mentioned,
using TMPDIR seems like the only sensible way to proceed.
Cheers,
David
--
David McBride <[log in to unmask]>
Department of Computing, Imperial College, London
|