This shows you the differences between two versions of the page.
|
asc:laboratoare:01 [2026/03/12 21:07] tudor.calafeteanu [GPU] |
asc:laboratoare:01 [2026/03/26 14:25] (current) emil.slusanschi [Resurse utile] |
||
|---|---|---|---|
| Line 127: | Line 127: | ||
| ^ Partiție ^ Linie cache ^ L1d SRAM/core ^ L1i SRAM/core ^ L2 SRAM/core ^ L3 SRAM/socket ^ DRAM/nod¹ ^ | ^ Partiție ^ Linie cache ^ L1d SRAM/core ^ L1i SRAM/core ^ L2 SRAM/core ^ L3 SRAM/socket ^ DRAM/nod¹ ^ | ||
| - | | dgxh100 | 64B | 32 KB | 48 KB | 2 MB | 105 MB | ~2 TB DDR5-4800; 8 canale; ~307 GB/s | | + | | dgxh100 | 64B | 48 KB | 32 KB | 2 MB | 105 MB | ~2 TB DDR5-4800; 8 canale; ~307 GB/s | |
| | dgxa100 | 64B | 32 KB | 32 KB | 512 KB | 256 MB | ~2 TB DDR4-3200; 8 canale; ~204 GB/s | | | dgxa100 | 64B | 32 KB | 32 KB | 512 KB | 256 MB | ~2 TB DDR4-3200; 8 canale; ~204 GB/s | | ||
| | ucsx | 64B | 48 KB | 32 KB | 1.25 MB | 24 MB | ~512 GB DDR4-3200; 4 canale; ~102 GB/s | | | ucsx | 64B | 48 KB | 32 KB | 1.25 MB | 24 MB | ~512 GB DDR4-3200; 4 canale; ~102 GB/s | | ||
| Line 413: | Line 413: | ||
| srun --partition=ucsx --gres=gpu:1 ./hello_cuda # rulare interactivă simplă | srun --partition=ucsx --gres=gpu:1 ./hello_cuda # rulare interactivă simplă | ||
| srun --partition=ucsx --gres=gpu:1 --pty bash # sesiune interactivă pe nodul de calcul | srun --partition=ucsx --gres=gpu:1 --pty bash # sesiune interactivă pe nodul de calcul | ||
| + | srun --partition=haswell -w haswell-wnxx --pty bash # rulare interactivă simplă pe un anumit nod (xx se inlocuieste cu un numar anume de sistem) de pe partitia haswell | ||
| + | |||
| # === Informații despre cluster === | # === Informații despre cluster === | ||
| Line 444: | Line 446: | ||
| * Cât RAM e disponibil per nod vs. maximul permis per job? (hint: ''scontrol show partition <nume>'') | * Cât RAM e disponibil per nod vs. maximul permis per job? (hint: ''scontrol show partition <nume>'') | ||
| * Cum vedeți joburile care se execută în prezent pe cluster? Cum opriți un job specific? | * Cum vedeți joburile care se execută în prezent pe cluster? Cum opriți un job specific? | ||
| + | * Cum puteti rula un job (interactiv sau nu) pe un anumit nod din cluster (Hint, explorati optiunea -w de la srun) | ||
| * Rulați cel puțin un program C multi-threaded și un program CUDA, atât cu ''sbatch'', cât și cu ''srun''. Verificați rezultatele. Care este diferența dintre cele două comenzi? | * Rulați cel puțin un program C multi-threaded și un program CUDA, atât cu ''sbatch'', cât și cu ''srun''. Verificați rezultatele. Care este diferența dintre cele două comenzi? | ||
| * Scrieți un program C multi-threaded care face calcule intensive (de exemplu suma unei serii pe fiecare thread). Rulați-l o dată cu ''%%--cpus-per-task=N%%'' și o dată fără ''%%--cpus-per-task=N%%'', unde N este numărul de thread-uri din program. Comparați timpii de execuție (hint: ''time ./program'') și explicați diferența. | * Scrieți un program C multi-threaded care face calcule intensive (de exemplu suma unei serii pe fiecare thread). Rulați-l o dată cu ''%%--cpus-per-task=N%%'' și o dată fără ''%%--cpus-per-task=N%%'', unde N este numărul de thread-uri din program. Comparați timpii de execuție (hint: ''time ./program'') și explicați diferența. | ||
| Line 451: | Line 454: | ||
| * [[https://slurm.schedmd.com/mc_support.html | SLURM Support for Multi-core/Multi-thread Architectures]] | * [[https://slurm.schedmd.com/mc_support.html | SLURM Support for Multi-core/Multi-thread Architectures]] | ||
| * https://infrastructure.pages.upb.ro/wiki/docs/grid/ | * https://infrastructure.pages.upb.ro/wiki/docs/grid/ | ||
| + | * https://guides.upb.ro/docs/grid/apptainer-usage | ||