ViTViz / scripts /probe_array_saga_real.sh
lucasddmc's picture
feat(ui): descrição, créditos e agradecimento de financiamento; corrige caixa de upload presa ao voltar para modelo default
b0e01a5
Raw
History Blame Contribute Delete
2.23 kB
#!/bin/bash
# ============================================================================
# ViTViz — probe ε×métricas SAGA-REAL (paper-exact ensemble ViT + BiT-M-R152x4).
# Re-roda SÓ o SAGA com o ensemble paper-exact nos 4 modelos × 7 ε × 200 imgs,
# corrigindo o probe notgr4 (job 1436) que rodou SAGA-single por engano.
# Job ARRAY: 4 modelos (tasks 0-3), 2 em paralelo (%2).
# A100 full only (exclui RTX [1-5] + nós down [8,10] + MIG [6]) → node7/node9.
# HF offline: BiT (3.5GB) já cacheado → evita resolver/lockar via HF (hang de NFS).
# Submeter: cd ~/ViTViz && sbatch scripts/probe_array_saga_real.sh
# Pós: rsync results/raw/probe_eps_curve_tcc_saga_real/ → merge com notgr4 (FGSM/PGD/MIM).
# ============================================================================
#SBATCH --job-name=vitviz_probe_saga_real
#SBATCH --partition=short-simple
#SBATCH --qos=simple
#SBATCH --array=0-3%2
#SBATCH --exclude=cluster-node[1-6,8,10]
#SBATCH --cpus-per-task=8
#SBATCH --mem=32G
#SBATCH --gres=gpu:1
#SBATCH --time=12:00:00
#SBATCH --output=/home/CIN/%u/ViTViz/logs/%x_%A_%a.out
#SBATCH --error=/home/CIN/%u/ViTViz/logs/%x_%A_%a.err
set -euo pipefail
cd "$HOME/ViTViz"
mkdir -p logs
if [ -f "$HOME/ViTViz/.venv/bin/activate" ]; then
source "$HOME/ViTViz/.venv/bin/activate"
elif [ -f "$HOME/vitviz_venv/bin/activate" ]; then
source "$HOME/vitviz_venv/bin/activate"
fi
# BiT/ViTs já cacheados → ler do cache direto, sem rede/lock (evita rpc_wait de NFS).
export HF_HUB_OFFLINE=1
export TRANSFORMERS_OFFLINE=1
export HF_HUB_DISABLE_TELEMETRY=1
MODELS=("ViT-S/16 · ImageNet-1k" "ViT-S/32 · ImageNet-1k" "ViT-B/32 · ImageNet-1k" "ViT-B/16 · ImageNet-1k")
MODEL="${MODELS[$SLURM_ARRAY_TASK_ID]}"
echo "=== probe SAGA-real (paper-exact, offline) | task $SLURM_ARRAY_TASK_ID -> $MODEL | $(hostname) | $(date) ==="
echo "python: $(which python) | HF_HUB_OFFLINE=$HF_HUB_OFFLINE"
nvidia-smi --query-gpu=name,memory.total --format=csv,noheader 2>/dev/null || true
python experiments/run_attack_sweep.py \
--config configs/experiments/exp_probe_eps_curve_tcc_saga_real.yaml \
--model-name "$MODEL" \
--device cuda
echo "=== task $SLURM_ARRAY_TASK_ID ($MODEL) done — exit $? ==="