#!/usr/bin/env bash set -euo pipefail # Kill any lingering mimalloc-bench/larson runs and our bench runner scripts. # Usage: scripts/kill_bench.sh PATS=( "mimalloc-bench/bench/larson/larson" "scripts/run_bench_suite.sh" "scripts/save_prof_sweep.sh" "scripts/ab_sweep_mid.sh" ) found=0 for pat in "${PATS[@]}"; do if pgrep -fa "$pat" >/dev/null 2>&1; then echo "[kill_bench] Found processes for: $pat" pgrep -fa "$pat" || true found=1 fi done if [[ "$found" -eq 0 ]]; then echo "[kill_bench] No matching bench processes found." exit 0 fi echo "[kill_bench] Sending SIGTERM..." for pat in "${PATS[@]}"; do pgrep -f "$pat" >/dev/null 2>&1 && pkill -f "$pat" || true done sleep 1 echo "[kill_bench] Forcing SIGKILL for leftovers..." for pat in "${PATS[@]}"; do pgrep -f "$pat" >/dev/null 2>&1 && pkill -9 -f "$pat" || true done echo "[kill_bench] Done."