Skip to content

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.

Important

Do not use /tmp/ for temporary file storage.

Do use local scratch or network scratch.

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: