Dalton

Details about nodes are available below in this page.

To Reserve nodes see the documentation here.

To Start a node that looks down see here.

All users must be subscribed to dalton-users@inria.fr.

Le frontal

  • ma :
    • Vue du réseau Inria en dalton.bordeaux.inria.fr
    • Mono-processeur Intel Xeon Hexa-core (1×6 = 6 coeurs) Haswell E5-2603v3 1.6GHz (x86_64)

Ne pas faire de calcul sur ma. Compiler à la rigueur uniquement.

Il est accessible depuis le réseau INRIA sous le nom dalton.bordeaux.inria.fr. Ou depuis l'extérieur via la machine acces (voir https://wiki.inria.fr/support/BSO:SSH) ou par le VPN (voir https://wiki.inria.fr/support/VPN) Les autres daltons ne sont accessibles que depuis le frontal.

Depuis le réseau INRIA :

ssh <login_dalton>@dalton.bordeaux.inria.fr

Pour aller directement sur le frontal depuis l'extérieur en tapant ssh dalton, mettre dans le .ssh/config de la machine source :

Host dalton
User <login_dalton>
ProxyCommand ssh <login_inria>@acces.bordeaux.inria.fr nc dalton.bordeaux.inria.fr 22

Comme l'authentification se fait par clef ssh, il faut probablement propager votre agent ssh en ajoutant tout en haut du .ssh/config :

ForwardAgent yes

Les noeuds de calcul

  • leonide (le grand duc)
    • Dual-processeur Intel Xeon Icosa-core Hyperthreadé (2*20 = 40 coeurs, 80 threads) Cascade Lake Gold 6230 v2 2.1GHz (x86_64)
    • 2*192Go DDR NUMA + 2*768Go NVDIMM NUMA
  • henri0, henri1
    • Dual-processeur Intel Xeon Octakaideca-core Hyperthreadé (2*18 = 36 coeurs, 72 threads) Skylake Gold 6140 2.3GHz (x86_64)
    • 2*48Go NUMA
    • Infiniband ConnectX-4 EDR
  • joe0, joe1
    • Dual-processeur Intel Xeon Tetrakaideca-core Hyperthreadé (2*14 = 28 coeurs, 56 threads) Broadwell E5-2650L v4 1.7GHz (x86_64)
    • 2*32Go RAM NUMA
    • 2*GPU AMD Radeon R9 Fiji XT Nano sur averell1
    • Infiniband ConnectX-4 EDR
  • conan
    • Dual-processeur Intel Xeon Octo-core Hyperthreadé (2*8 = 16 coeurs, 32 threads) Sandy Bridge E5-2650 2GHz (x86_64)
    • 2*32Go RAM NUMA
    • 3* NVIDIA Tesla M2075
  • alaric
    • Dual-processeur Intel Xeon Octo-core Hyperthreadé (2*8 = 16 coeurs, 32 threads) Sandy Bridge E5-2650 2GHz (x86_64)
    • 2*16Go RAM NUMA
    • 2* ATI Radeon 7970
  • william0, william1 :
    • Dual-processeur Intel Xeon Octo-core Hyperthreadé (2*8 = 16 coeurs, 32 threads) Sandy Bridge E5-2650 2GHz (x86_64)
    • 2*16Go RAM NUMA
    • 1* NVIDIA Tesla M2075
    • Infiniband ConnectX-3 FDR
  • averell1 :
    • Dual-processeur Intel Xeon Octo-core Hyperthreadé (2*8 = 16 coeurs, 32 threads) Sandy Bridge E5-2650 2GHz (x86_64)
    • 2*32Go RAM NUMA
    • 2* NVIDIA Tesla M2075
    • Infiniband ConnectX-3 FDR
    • NB: averell0 dead (RAID controller), GPU moved to Plafrim
  • jolly :
    • Quadri-processeur AMD Opteron Hexadeca-coeurs (4*16 = 64 coeurs) Interlagos Bulldozer 6272 2.1GHz (x86_64)
    • 8*16Go RAM NUMA
  • jack0, jack1 :
    • Dual-processeur Intel Xeon Hexa-core (2×6 = 12 coeurs, 24 threads) Westmere Gulftown X5650 2.66GHz (x86_64)
    • 2*12Go RAM NUMA
    • InfiniBand ConnectX-2 QDR
    • Myri-10G
  • morris :
    • Mono-processeur Intel Xeon Quad-core (1×4 = 4 coeurs) Harpertown E5420 2.50GHz (x86_64)
    • 16Go RAM

Les machines finissant par un numéro disposent de réseaux rapides (InfiniBand et/ou Myri-10G) mais elles ne sont connectées que par paire, sans switch.

Machines virtuelles

morris fait également tourner des machines virtuelles accessibles comme n'importe quel noeud.

  • morris32
    • Linux 32bits avec configuration similaire aux autres noeuds.
    • Avec comptes/homes/… habituels.

Faire tourner une machine virtuelle

Si on le lance pas en tant que root, il faut s'ajouter au groupe kvm pour que ça aille vite :)

Pour passer un GPU ou une carte réseau à une machine virtuelle (disponible au moins sur les averell, william, jack, et alaric):

Préparer la machine (il suffit de faire le dernier test pour vérifier que c'est OK):

  • activer l'option dans le bios (SR-IOV ou VT-d)
  • s'assurer que la machine le supporte: dmesg | grep IOMMU devrait afficher quelque chose du genre dmar: IOMMU 0: reg_base_addr bd100000 ver 1:0 cap d2078c106f0462 ecap f020fe
  • s'assurer que ça marche: ls /sys/kernel/iommu_groups/ devrait afficher une série de nombres

Préparer son compte:

  • Dans .bashrc, mettre export XAUTHORITY=$HOME/.Xauthority pour que sudo en profite

Lancer:

  • se connecter à la console IPMI de la machine (pour attraper le grub ci-dessous)
  • rebooter la machine, en ajoutant en paramètre du noyau dans grub l'option intel_iommu=on pour un CPU intel, ou amd_iommu=on pour un CPU AMD.
  • repérer les identifiants du GPU: lspci -n | grep 10de:
  • charger les modules vfio: modprobe vfio_pci
  • virer les modules utilisant le gpu: rmmod nvidia_uvm nvidia_drm nvidia_modeset nvidia
  • ajouter le GPU à vfio: echo 10de 1094 > /sys/bus/pci/drivers/vfio-pci/new_id
  • lancer qemu: kvm -m 2G -cpu host,kvm=off -device vfio-pci,host=05:00.0,rombar=0
    • (il faut kvm=off pour un GPU nvidia sinon le driver nvidia refuse de fonctionner…)
  • après avoir fini, rebooter (sans les options intel_iommu ou amd_iommu, sinon CUDA ne fonctionne pas correctement)

Connexion

Il n'y a pas de vrai système de réservation des noeuds (voir ici), on peut donc faire ssh <machine> depuis le frontal pour aller sur un noeud de calcul.

Pour aller directement sur un noeud de calcul depuis l'extérieur, avec par exemple ssh jolly, ajoutez au fichier .ssh/config créé ci-dessus:

Host henri* joe* jack* william* averell* morris* jolly alaric conan
User <login_dalton>
ProxyCommand ssh dalton tcpconnect %h %p

Stockage

Il y a trois stockages différents sur les daltons. Dans l'ordre, de moins en moins fiable, et de plus en plus rapide:

  • /home (et /home/runtime pour les données communes à tout le monde)
    • Partagé entre tous les daltons (NFS)
    • Fiable (RAID dans un NAS Inria, avec réplication distante chaque nuit)
    • Permet de récupérer les anciennes versions des fichiers
      • Quelque soit l'endroit où vous ètes, il y a un sous-répertoire virtuel caché .snapshot contenant la version des 5 heures et 2 jours précédents.
    • Pas très rapide (serveur NFS “loin”), notamment quand on n'a pas manipulé ses fichiers récemment (cache froid)
    • Monté aussi sur sync et sync2, dans /runtime/home (en autofs, donc il faut faire cd sans complétion pour y accéder).
  • /mnt/dalton
    • Partagé entre les daltons (NFS)
    • Peu fiable (stocké dans un RAID 1 sur ma)
    • Plus rapide que /home car serveur NFS sur ma et disques SSD
    • Tout le monde peut s'y créer un répertoire à lui
  • /mnt/scratch
    • Non-partagé entre machines, système de fichiers local à chaque machine
    • Non-fiable (RAID0 sur certaines machines, plus ou moins vieilles, pas toutes sous garantie)
    • Très rapide car stocké en local
    • Tout le monde peut s'y créer un répertoire à lui

Exemples:

  • La plupart de vos données peuvent rester dans /home
  • Si vous compilez un gros truc qui tourne sur une seule machine, ca compilera beaucoup plus vite de /mnt/scratch
  • Si vous compilez un gros truc qui doit être disponible sur plusieurs machines, /mnt/dalton est un bon compromis
  • Si vous installez un logiciel, il devrait surement aller dans /soft/amd64 avec les autres

A noter que le volume NFS du NAS Inria est monté sur sync et sync2 dans /runtime. Il n'y a pas de completion (montage autofs ghost). Il faut donc aller explicitement dans un sous-répertoire de /runtime pour qu'il apparaisse. Par exemple, aller /runtime/home/<login> pour votre home.

Archives

Voir ici

les_dalton.txt · Last modified: 2019/09/04 19:36 by goglin
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki