#!/bin/bash # Gate F on the medium model: coordinator M3U96a (bounded local residency, cold NVMe via purge + F_NOCACHE) vs remote execution # on M3U96b with static (odd) and frequency-based (popular: least popular experts remote) placements. Run ON M3U96a. cd ~/wp33/titan-moe M=$(ls -d ~/.cache/huggingface/hub/models--mlx-community--Qwen3-30B-A3B-Instruct-2507-4bit/snapshots/*) OUT=benchmarks/raw/gateF/two_node_qwen3_m3u96a_m3u96b.jsonl mkdir -p benchmarks/raw/gateF for cap in 32 64; do for pl in none odd popular:benchmarks/raw/gateF/traces_qwen3_m3u96a; do echo "$SUDO_PW" | sudo -S purge 2>/dev/null; sleep 2 .venv/bin/python benchmarks/scripts/bench_distributed.py --model $M --workers w0=192.168.2.85:9412 --placement $pl --capacity $cap \ --nocache --families general,code --split heldout --repeats 2 --max-tokens 64 --out $OUT 2>&1 | grep -v Fetching | tail -2 done done echo GATEF-DONE