DEC user documentation

Disclaimer: This website is a work in progress. If you have any questions or suggestions, please open an issue.

Introduction

The DEC is an HPC cluster of 30 hyper-threaded machines connected on 3 networks: an ethernet at 1 Gb/s, an ethernet at 10 Gb/s and an Infini Band at 40 Gb/s. This center has 812 cores (the double of threads), 15 TBytes of memories and 300 Tbytes of disks. The generic name of the different machines is "mardec" (for Marseille Dark Energy Center): - mardec: Master machine with 20 cores (40 threads) and 250 Gbytes of memories. This machine is used to access the cluster from outside the CPPM, compile codes, and to submit jobs... But not to run them. - mardec00: This machine is designed for high memory calculations, with 28 cores (56 threads) and 1.5 TBytes of memories. This machine is slightly slower (10%) than the rest of the cluster. It is therefore preferable not to use it in parallel with other nodes in the cluster at the risk to slow down by 5-10% the total execution time. However, nothing prohibits you from using it. - mardec01 to mardec28: These 28 machines are each equipped with 28 cores (56 threads) and 0.5 TBytes of memory and 300 Gbytes of internal disk (`/data``).

Access

To access the DEC, you need to be a member of the CPPM group or a direct collaborator of a member of the CPPM group. If you are a member of the CPPM group, you should already have access to the DEC. If you are not, please contact the DEC administrator via the issue tracker to request access.

From the CPPM network

From within the CPPM network, the DEC master node and all compute nodes are directly reachable via SSH:

ssh <username>@mardec.in2p3.fr   # master node
ssh <username>@mardec24.in2p3.fr # compute node, for example

From outside the CPPM network

mardec.in2p3.fr is not directly exposed to the internet. All external connections must go through the IN2P3 SSH gateway marportail2.in2p3.fr. Additionally, two-factor authentication (2FA) is required on that gateway.

Follow the steps below to set up your access.

Step 1 — Configure 2FA

Set up two-factor authentication on your IN2P3 account by following the IN2P3 remote connection instructions.

Step 2 — Configure your SSH config

Add the following lines to your ~/.ssh/config file to route connections through the gateway:

Host marportail
  HostName marportail2.in2p3.fr
  User <username>

Host mardec.in2p3.fr
  User <username>
  ProxyJump marportail

Host mardec??.in2p3.fr
  User <username>
  ProxyJump marportail

With this configuration, you can connect to the DEC from anywhere:

ssh mardec.in2p3.fr            # master node
ssh mardec24.in2p3.fr          # compute node, for example

You will be prompted for your 2FA code when connecting through the gateway.

Optional — Configure SSH key authentication

Using an SSH key avoids typing your password on the DEC itself (note: the 2FA on the gateway still applies). Generate a key pair with a passphrase (required):

ssh-keygen -t ed25519

Then copy the public key to the DEC:

ssh-copy-id <username>@mardec.in2p3.fr

To also use key-based auth through the gateway, add your key to the marportail entry in ~/.ssh/config:

Host marportail
  HostName marportail2.in2p3.fr
  User <username>
  IdentityFile <path to your private key>

Host mardec.in2p3.fr
  User <username>
  IdentityFile <path to your private key>
  ProxyJump marportail

Host mardec??.in2p3.fr
  User <username>
  IdentityFile <path to your private key>
  ProxyJump mardec.in2p3.fr

Tip — use ssh-agent to avoid retyping your passphrase

If your SSH key is protected by a passphrase (as recommended), you can load it once per session into ssh-agent so you are not prompted on every connection: bash eval "$(ssh-agent -s)" # start the agent ssh-add ~/.ssh/id_ed25519 # load your key (enter passphrase once) Most desktop environments (GNOME, KDE, macOS) start an ssh-agent automatically at login. You can verify with echo $SSH_AUTH_SOCK. If set, just run ssh-add and you're done. To persist the key across reboots, use your OS keychain integration (e.g. ssh-add --apple-use-keychain on macOS, or configure AddKeysToAgent yes in ~/.ssh/config).

Go further