next up previous
Next: Porting Codes Up: User's Guide to the Previous: Compilation


File Management

Use of /tmp

Users should use their areas in /home for their development files and /work for temporary and runtime files.

The /tmp area is principally intended for the temporary storage of data used by the system and system programs. Because of the size and number of jobs normally run on the HPCx service, it is impractical to allow users create files in /tmp as it soon overflows. Normally, the system ensures that there is free space on /tmp by periodically removing files as necessary, when they are no longer in use. If /tmp is filling up at a dangerous rate, however, any files there may be deleted automatically at any time, in order to ensure that the system operates safely.

For this reason, users should not normally place files on /tmp.

Use of /tmp by the compilers

The IBM Fortran, C and C++ compilers use /tmp to store temporary information. This /tmp area is shared with all other interactive users and occasionally /tmp may fill up or temporary files may be erased. In this case the compilation may fail, quite often with no clear indication of what the problem is. Setting the environment variable TMPDIR makes the compilers use a different directory. Please see here for an example.

Use of /tmp - gotchas for Fortran programmers

If a Fortran program creates a file of type SCRATCH, the file is given a name starting with Xlf... and by default it is placed in the /tmp directory. If the program then doesn't exit properly for whatever reason, the file is not removed, but continues to exist.

There is a /tmp area for every LPAR. If that area gets full, AIX on that lpar crashes.

On some recent occasions, failed program runs have left a lot of files in the /tmp areas and we need to make sure that this doesn't have any catastrophic effects on the HPCx system.

The easiest way to do this is for users to arrange for SCRATCH files to be created somewhere else. You can do this by defining the TMPDIR environment variable to point to another directory, e.g. in the users workspace.

We would ask all users to follow this simple procedure If the /tmp directories continue to fill up we will have to put restrictions on this, which would inconvenience everybody.

Other file management issues

For information relating to data storage and contingency plans in the case of data loss, please refer to:

next up previous
Next: Porting Codes Up: User's Guide to the Previous: Compilation
Andrew Turner