What is /scratch volume?

The /scratch is a temporary workspace that you can use to copy your input data and write your calculation outputs. The pros of working in the /scratch are the following:

  • offers a bigger volume than the volume available in your /home space (many /scratch workspaces are available),
  • increase processing speed of reads/writes,
  • increase the simultaneous I/O.


Scratches are shared and common storages, their performances depends on your proper use. Hence, they must not contain:

  • documentation (lots of useless small files) ⇒ /home,
  • symbolic links (tiny files),
  • programs or exe (useless I/O) ⇒ /home.
Exclusively input, temporary or output data

Two types of /scratch are available:

Global scratch of a cluster

As we have various clusters of different generations of processors (Lake, the newest, E5 and X5, the former), we have several global scratches.

Cluster Lake

The /scratch/Lake/, common to CLG* and SLG* queues is available for all cluster Lake nodes.

It contains /scratch/Lake/lake-gfs-scratch, as a empty check file.

It is accessible from cluster Lake front machines

-At last-, /scratch/Lake is available
/scratch/
     ├── Lake/         (common to Lake cluster)
     ├── disk/         (local to some servers)
     ├── Chimie/       (reserved to chimie usage)
     ├── Bio/          (reserved to biologie usage)
     ...
     └── Project_name/ (reserved to some servers, 
                        with dedicated hardware)

Cluster E5

The /scratch/E5N/, common to E5-* queues is available for all cluster E5 nodes.

It contains /scratch/E5N/E5N-gfs-scratch, as a empty check file.

It is accessible from cluster E5 front machines

/scratch/
     ├── E5N/          (E5 scratch, common to E5 cluster)
     ├── nvme/         (local to some servers)
     ├── ssd/          (local to some servers)
     ...
     └── Project_name/ (local to some servers, 
                        with dedicated hardware)

Cluster X5

The /scratch/X5/, common to X5-* queues is available for all cluster x55/x56 nodes.

It contains /scratch/X5/x5570-gfs-scratch, as a empty check file.

It is accessible from cluster x55/x56 front machines

/scratch/
     └── X5/           (X5 scratch, common to X5 cluster)

Scratch local to some nodes

Some local /scratch are available only on some nodes. See detailled description or ask staff.

Network topology of PSMN


The diagram below (NOT up-to-date) represents the integration of these two / scratch spaces in the PSMN infrastructure.

Cliquez pour afficher ⇲

Cliquez pour masquer ⇱


• Locals /scratch:

These locals /scratch are only avaiable in some nodes of the cluster see more complete description .

How to use the scratch

Using the /scratch: manual copy

For global /scratch, before submitting your job, copy your inputs into a folder on the /scratch/ (ie /scratch/<cluster>/<login>/whatever/).

The simplest is to reproduce the same hierarchy of folders and files by changing /home by /scratch/<cluster>.

Do not forget to modify your submitting files consequently.

At the end of the run, retrieve your results manually, in the / scratch, from any of the corresponding front nodes.

Using the /scratch : automatic copy

For local /scratch you don't know which node will be assigned to your job (it is also valid for the global scratch, but less annoying). Thus, You cannot copy your data to a particular node in advance. You must integrate the copy /scratch/home in the submitted script.

Examples are available here.

We don't have a sample script that cleans up automatically. Similarly, if you don't feel comfortable with these scripts, do not hesitate to come and talk about during a Tuesday coffee session.

Technological transfer

The global /scratch (glusterfs) were deployed thanks to the upstream work, recipes and integrations made on the CBP experimental platform.

en/documentation/tutorials/scratch.txt · Dernière modification: 2020/08/25 17:58 (modification externe)