#!/usr/bin/env bash # Boot, wait for the SETTLED title with the corpus's own gate, then measure the # presented-frame rate idle and under load. set -u export HOME=/sylph-home/re SDL_AUDIODRIVER=dummy DISPLAY=:98 SD="$(cd "$(dirname "$0")" && pwd)" OUT="${OUT:-/sylph-home/re/presentrate}"; mkdir -p "$OUT" LOG="$OUT/canary.stdout" bash "$SD/ensure_single_emulator.sh" if ! xdpyinfo -display "$DISPLAY" >/dev/null 2>&1; then rm -f "/tmp/.X${DISPLAY#:}-lock" 2>/dev/null || true nohup bash -c 'Xvfb "$0" -screen 0 1280x720x24 -ac -nolisten tcp \ +extension GLX +extension RANDR >/tmp/xvfb98.log 2>&1' "$DISPLAY" /dev/null 2>&1 & for _ in $(seq 1 50); do xdpyinfo -display "$DISPLAY" >/dev/null 2>&1 && break; done nohup env DISPLAY="$DISPLAY" HOME=/sylph-home openbox /tmp/openbox98.log 2>&1 & fi XUID="${SYLPH_XUID:-$(ls "${XENIA_CONTENT:-$HOME/.local/share/Xenia/content}" 2>/dev/null | head -1)}" [ -n "$XUID" ] || { echo "NO PROFILE"; exit 2; } echo "── EFFECTIVE CONFIG ──" echo " out=$OUT profile=$XUID" echo " gate = wait_plate_pulse.py, CALLED not reimplemented" cd /sylph-home/re nohup run-canary --apu=sdl --log_mask=13 --log_level=2 \ --logged_profile_slot_0_xuid="$XUID" "$LOG" 2>&1 & python3 "$SD/wait_plate_pulse.py" 900 || { echo "NEVER REACHED THE SETTLED TITLE"; exit 1; } echo "settled title reached" python3 "$SD/present_rate_vs_load.py" "$OUT" "${SECS:-30}"