From 05f05a8a969a2e57c0e1d0038d54938addcc9388 Mon Sep 17 00:00:00 2001 From: Arity-T Date: Mon, 16 Mar 2026 17:40:54 +0300 Subject: [PATCH] task1 --- task1/README.md | 2 ++ task1/scripts/run_cuda.slurm | 4 ++++ task1/scripts/run_intel_linpack.slurm | 2 ++ 3 files changed, 8 insertions(+) diff --git a/task1/README.md b/task1/README.md index 38556c4..cc6ebce 100644 --- a/task1/README.md +++ b/task1/README.md @@ -48,6 +48,8 @@ sacct -j --format=JobID,JobName,Partition,State,Start,End,Elapsed,N В текущей конфигурации СКЦ в `tornado-k40` GPU выбирается самим разделом, поэтому в `slurm`-скрипте не используется `--gres=gpu:1`. Сам скрипт запускается из `SLURM_SUBMIT_DIR`, как в рабочем примере из методички, чтобы сборка и логи всегда шли именно в `~/supercomputers/task1`, а не во временную директорию Slurm. +Модули `compiler/gcc/11` и `nvidia/cuda/11.6u2` загружаются прямо внутри `run_cuda.slurm` до запуска программы. Это важно: если загрузить их только в отдельном `build.sh`, бинарник может собраться с новой `libstdc++`, а запускаться уже с системной, что даёт ошибки вида `GLIBCXX_* not found`. + После завершения посмотри: ```bash diff --git a/task1/scripts/run_cuda.slurm b/task1/scripts/run_cuda.slurm index d269161..055c165 100755 --- a/task1/scripts/run_cuda.slurm +++ b/task1/scripts/run_cuda.slurm @@ -12,6 +12,10 @@ set -euo pipefail cd "${SLURM_SUBMIT_DIR}" ROOT_DIR="${SLURM_SUBMIT_DIR}" +module purge +module load compiler/gcc/11 +module load nvidia/cuda/11.6u2 + mkdir -p results bin ./scripts/build.sh diff --git a/task1/scripts/run_intel_linpack.slurm b/task1/scripts/run_intel_linpack.slurm index e324299..545d301 100755 --- a/task1/scripts/run_intel_linpack.slurm +++ b/task1/scripts/run_intel_linpack.slurm @@ -13,6 +13,8 @@ set -euo pipefail cd "${SLURM_SUBMIT_DIR}" ROOT_DIR="${SLURM_SUBMIT_DIR}" +module purge + mkdir -p results LINPACK_DIR="${LINPACK_DIR:-/linux/share/mkl/benchmarks/linpack}"