| # ============================================================================ | |
| # 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 $? ===" | |