Files
hypertower/v3/distributed/server_cheat_sheet.md
T
2026-04-14 19:42:16 +02:00

3.1 KiB

Distributed Server Cheat Sheet

All commands assume server is running on hades at port 8765.

Start Server

python -m v3.distributed.server --token hypertower

Run inside tmux so it survives disconnects:

tmux new -s htserver
python -m v3.distributed.server --token hypertower
# Ctrl-B D to detach
tmux attach -t htserver   # reattach later

Start Clients

Hades (server-local, no sync):

python -m v3.distributed.client \
    --server http://hades:8765 --token hypertower \
    --server-ssh ignored --server-path ignored \
    --local-path /home/rpotter/hypertower \
    --no-sync

Apollo (remote client):

python -m v3.distributed.client \
    --server http://hades:8765 --token hypertower \
    --server-ssh rpotter@hades \
    --server-path /home/rpotter/hypertower \
    --local-path /home/odin/hypertower

Monitoring

Live client monitor (refreshes every 5s):

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clients --watch

Faster refresh:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clients --watch --interval 2

Inspect a single client:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clients <client_id>

View job queue:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower jobs

Filter by state:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower jobs --state pending
python -m v3.distributed.cli --server http://hades:8765 --token hypertower jobs --state running
python -m v3.distributed.cli --server http://hades:8765 --token hypertower jobs --state failed

Submitting Jobs

Phase 3 main grid:

python -m v3.scripts.main.phase3.dispatch_phase3 \
    --server http://hades:8765 --token hypertower

Dry run (check what would be submitted):

python -m v3.scripts.main.phase3.dispatch_phase3 \
    --server http://hades:8765 --token hypertower --dry-run

Other grids:

python -m v3.scripts.main.phase3.dispatch_phase3 \
    --server http://hades:8765 --token hypertower \
    --grid v3/scripts/main/phase3/epoch_grid.json

python -m v3.scripts.main.phase3.dispatch_phase3 \
    --server http://hades:8765 --token hypertower \
    --grid v3/scripts/main/phase3/phase35_grid.json

Queue Management

Clear failed jobs:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clear --states failed

Clear running jobs (orphan cleanup):

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clear --states running

Clear all jobs:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clear --all

Clear by run name:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower clear --run-name phase3/baseline

Cancel a specific job:

python -m v3.distributed.cli --server http://hades:8765 --token hypertower cancel <job_id>