Skoči na vsebino

EESSI - EUROPEAN ENVIRONMENT FOR SCIENTIFIC SOFTWARE INSTALLATIONS

Glavni cilj tega projekta je priprava in izgradnja običajno uporabljenega sklada programske opreme na infrastrukturi HPC in zunaj nje.

Uvedba EESSI na HPC

Projekt uvedbe EESSI je izveden prek izvornih strežnikov CernVM-FS in (6 x) Squid Proxy strežnikov. Odjemalec CernVM-FS je na voljo v gručah za vse uporabnike na prijavnih in računskih vozliščih.

Produkcijski EESSI repozitorij

Inicializacija modulov 2023.06:

source /cvmfs/software.eessi.io/versions/2023.06/init/lmod/bash

Inicializacija modulov 2025.06:

source /cvmfs/software.eessi.io/versions/2025.06/init/lmod/bash

Izpis:

Modules purged before initialising EESSI
Module for EESSI/2023.06 loaded successfully
EESSI has selected x86_64/amd/zen2 as the compatible CPU target for EESSI/2023.06
EESSI has selected accel/nvidia/cc80 as the compatible accelerator target for EESSI/2023.06
(for debug information when loading the EESSI module, set the environment variable EESSI_MODULE_DEBUG_INIT)

Seznam naloženih modulov:

{EESSI/2023.06} [$USER@hpc-login ~]$ module list

Izpis:

Currently Loaded Modules:
  1) EESSI/2023.06

Seznam razpoložljivih modulov:

{EESSI/2025.06} [admin@hpc-login ~]$ module av

------------------ /cvmfs/software.eessi.io/versions/2025.06/software/linux/x86_64/amd/zen2/accel/nvidia/cc80/modules/all -------------------
   CUDA/12.6.0                       cuDNN/9.15.0.57-CUDA-12.9.1                      (g,D)
   CUDA/12.8.0                       NCCL/2.22.3-GCCcore-13.3.0-CUDA-12.6.0           (g)
   CUDA/12.9.1                (D)    OSU-Micro-Benchmarks/7.5-gompi-2024a-CUDA-12.6.0 (g)
   cuDNN/9.5.0.50-CUDA-12.6.0 (g)    UCC-CUDA/1.3.0-GCCcore-13.3.0-CUDA-12.6.0        (g)
   cuDNN/9.10.1.4-CUDA-12.8.0 (g)    UCX-CUDA/1.16.0-GCCcore-13.3.0-CUDA-12.6.0       (g)

--------------------------- /cvmfs/software.eessi.io/versions/2025.06/software/linux/x86_64/amd/zen2/modules/all ----------------------------
   Abseil/20240722.0-GCCcore-13.3.0                      libpng/1.6.50-GCCcore-14.3.0                    (D)
   absl-py/2.1.0-GCCcore-13.3.0                          libpsl/0.21.5-GCCcore-14.2.0
   alsa-lib/1.2.14-GCCcore-14.3.0                        libpsl/0.21.5-GCCcore-14.3.0                    (D)
   ant/1.10.12-Java-17                                   librsvg/2.60.0-GCCcore-13.3.0
   AOCL-BLAS/5.0-GCC-14.2.0                              librsvg/2.61.0-GCCcore-14.3.0                   (D)
   ....

Zapuščanje okolja:

{EESSI 2023.06} [admin@hpc-login ~]$ exit

EESSI GPU podpora

Gonilniki NVIDIA so izpostavljeni za podporo EESSI GPE. Moduli so označeni z 'gpu' in jih je mogoče preizkusiti kot:

{EESSI 2023.06} [admin@hpc-login ~]# module load CUDA-Samples
{EESSI 2023.06} [admin@hpc-login ~]# deviceQuery

deviceQuery Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "NVIDIA A100-PCIE-40GB"
  CUDA Driver Version / Runtime Version          13.0 / 12.1
  CUDA Capability Major/Minor version number:    8.0
  Total amount of global memory:                 40441 MBytes (42405855232 bytes)
  (108) Multiprocessors, (064) CUDA Cores/MP:    6912 CUDA Cores
  GPU Max Clock rate:                            1410 MHz (1.41 GHz)
  Memory Clock rate:                             1215 Mhz
  Memory Bus Width:                              5120-bit
  L2 Cache Size:                                 41943040 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
  Maximum Layered 1D Texture Size, (num) layers  1D=(32768), 2048 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(32768, 32768), 2048 layers
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total shared memory per multiprocessor:        167936 bytes
  Total number of registers available per block: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  Maximum number of threads per block:           1024
  Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
  Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 3 copy engine(s)
  Run time limit on kernels:                     No
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Enabled
  Device supports Unified Addressing (UVA):      Yes
  Device supports Managed Memory:                Yes
  Device supports Compute Preemption:            Yes
  Supports Cooperative Kernel Launch:            Yes
  Supports MultiDevice Co-op Kernel Launch:      Yes
  Device PCI Domain ID / Bus ID / location ID:   0 / 39 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 13.0, CUDA Runtime Version = 12.1, NumDevs = 1
Result = PASS

Zapuščanje okolja:

{EESSI 2023.06} [admin@hpc-login ~]$ exit
logout

Projektna dokumentacija: EESSI