Temporary Files (/tmp/ Directory)¶
The /tmp/ directory is local to each node and reserved for Linux operating system use. A full /tmp/ directory on a compute node reduces compute performance for everyone using the node. Do not use the directory /tmp/ as storage for temporary files. Instead, please use local scratch for fastest access and network scratch for largest space.
Some software packages default to using /tmp/ without warning or documentation, especially software designed for personal computers. We may reach out to inform you if your software fills /tmp/, as it can harm performance on that compute node. If that happens we will work with you to redirect temporary storage to one of the scratch spaces.
Software Known to Use /tmp/¶
The following software are known to use /tmp/ by default, and can be worked around by using the listed flags. See our Local Scratch page for more information about creating a local temporary directory. Also see our Network Scratch page for larger scratch storage. Be sure to delete files when your jobs are finished.
- Java: java * -Djava.io.tmpdir=/local/$USER/$SLURM_JOB_ID
- UMI Tools: umi_tools * --temp-dir=/local/$USER/SLURM_JOB_ID
- Samtools Sort: samtools sort * -T /local/$USER/$SLURM_JOB_ID
- GATK Tool: gatk --java-options * --tmp-dir /local/$USER/$SLURM_JOB_ID
- NVIDIA Clara Parabricks: pbrun * --tmp-dir=/local/$USER/$SLURM_JOB_ID.
- FastQC: fastqc * -d /local/$USER/$SLURM_JOB_ID
- MACS2: macs2 callpeak * --tempdir /local/$USER/$SLURM_JOB_ID
Software known to use /tmp/ by default with no known workaround:
- Keras has /tmp/.kerashardcoded as a fallback cache directory if~/.kerasis inaccessible. See TensorFlow GitHub Pages issues for a discussion of the issue.