Disk space and folder structure

Home directory

Env. variable

Path

Limit

$HOME

/massstorage/HOME/u123456

100 GB

The home directory on the cluster is currently the same as the one on the mass storage.

Attention

Since the home directory is located on the mass storage, and thus inherits its backup policy, it should never be used as a working directory.

Temporary data must be stored either in the global or in the local working directories.

Global working directory

Env. variable

Path

Limit

\

/scratch/GIGA

\

As opposed to the home directory, the global working directory, also known as global scratch, is not located on the mass storage. Consequently, it is not backed up. The purpose of this directory is to share data between different computing nodes, and to store intermediate results.

The total size of the scratch disks is around 308 TB. Still, no quota are applied on the global scratch directory, but, since it is shared by all the users, the space available varies over time (depending on the current load). To check the remaining free space before running a job, you can use the command:

df -h /scratch/GIGA

Folder structure

This scratch is organised in two main directories, as follows:

graph TB subgraph sub1[Scratch] C(/scratch/GIGA/USER) B(/scratch/GIGA/GROUP) end subgraph sub2[ ] B --- CC(GROUP) CC --> F(giga-massgpfs) CC --> E(giga-res) CC --> sup1(...) end subgraph sub3[ ] C --- GG(USER) GG --> Q(s123456) GG --> R(u123456) GG --> fsub(...) end style sub1 fill:#f3a581,stroke:#d65f4d,stroke-width:2px style sub2 fill:#f3a581,stroke:#d65f4d,stroke-width:2px style sub3 fill:#f3a581,stroke:#d65f4d,stroke-width:2px style C fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style B fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style E fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style F fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style Q fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style R fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style sup1 fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style fsub fill:#d2e6f0, stroke:#91c5df, stroke-width:2px style CC fill:#91c5df,stroke:#4393c3,stroke-width:2px, stroke-dasharray: 5, 5 style GG fill:#91c5df,stroke:#4393c3,stroke-width:2px, stroke-dasharray: 5, 5

This structure enforces permissions on the user/group directories. To create the personal user directory, one must run the following command on the login node:

sudo /scratch/GIGA/init-user.sh

If user u12456 runs this command, the directory /scratch/GIGA/USER/u123456 is created and the right properties are set (similar to a home directory).

Note

Users can only create their own scratch directory.

Important

Note the usage of sudo. This is mendatory to run this script.

The same way, one can create a shared directory for a group with:

sudo /scratch/GIGA/init-group.sh '<group>'

where <group> is the name of a group one is member of. If one is member of the group giga - example, the command:

sudo /scratch/GIGA/init-group.sh 'giga - example'

creates the directory /scratch/GIGA/GROUP/giga-example.

Note

The name of the created group directory makes sure to remove unwanted spaces. Hence, the group giga - massgpfs would correspond to the directory giga-massgpfs.

Such a shared directory can be used to share process logs to speed up debugging process, or to share data with other groups without giving the original data files, nor changing permissions.

Local working directory

Env. variable

Path

Limit

\

/local

\

Each computing node provides a local storage. The size of this storage depends on the node (see nodes specifications). Still, on most of them, the expected storage size is around 2 TB. This local storage should be used to store your input data during a job to speed up the IO requests.

Danger

The data stored in the local working directory of a node is only accessible for the node itself, and is deleted after the end of each job. You should make sure to migrate the outcome of a process to the global working directory before the end of any job.