소스 정보
- 저장소
- marin-community/marin
- 최근 소스 활동
- 2026년 5월 19일 23:30
- 감지된 SKILL.md 언어
- 영어
- 스타
- 1,266
- 포크
- 147
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/marin-community/marin --skill reserve-tpu명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
Scheduled scrub: TL;DR blocks on experiment issues.
Launch, monitor, hand off, resume, rollback, or babysit expensive Marin production. Typically >=1e22 model flops.
Lint, run the pre-PR checks, commit, push, and author or update the branch's pull request in the required plain-text format. Use when committing, pushing, or creating/updating a PR.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | reserve-tpu |
| description | Reserve an Iris-backed TPU worker for fast debugging with dev_tpu.py. |
Use this skill for the standard fast TPU debugging loop without wiring a full training job each time.
scripts/iris/dev_tpu.py reserves a TPU-backed worker through Iris, waits for the worker VM to come up, and lets you SSH into it or run commands directly against it. It uses gcloud SSH and SCP against the worker Iris assigned to the holder job. There is no persistent ~/.ssh/config alias.
Run at most one TPU job at a time on a given dev TPU VM. Do not launch concurrent TPU commands on the same worker from multiple shells, tmux panes, or background jobs.
allocate: submit a TPU holder job, resolve the assigned worker VM(s), optionally sync the repo, block until releasestatus: show the active local session metadataconnect: open an interactive SSH session to one reserved workersetup_env: sync the repo by default, then install/refresh the remote uv environment on one or all reserved workersexecute: sync local files to ~/marin on the reserved worker(s), then run one commandwatch: sync all reserved workers and rerun a command on the selected worker when local files changerelease: terminate the holder job and remove the local session filegcloud auth login
gcloud config set project hai-gcp-models
gcloud auth application-default login
make dev_setup
Ensure the Iris controller is running for your cluster. On shared Marin clusters this is usually already true; only start it yourself for a fresh or local cluster.
Use a cluster config that can actually provision the TPU type you want.
All invocations share this shape; only the subcommand and its flags change:
uv run scripts/iris/dev_tpu.py \
--config lib/iris/config/marin.yaml \
--tpu-name "$USER-v5p8" \
<subcommand> [flags]
Subcommands and distinctive flags:
allocate --tpu-type v5p-8 — reserves a single-host TPU and holds it until Ctrl-C. --tpu-type is required (the config may expose many variants; the script does not guess). Add --zone us-east5-b to pin the holder job to a zone (the config must expose that TPU family there). Add --no-setup-env to skip remote env setup.status — show the active session.connect — interactive SSH to the reserved worker. After connecting: cd ~/marin && source ~/.local/bin/env.setup_env — install/refresh the remote env. Run before the first execute/watch if you allocated with --no-setup-env.execute -- <cmd> — sync local files, then run <cmd>. Add --no-sync for a no-sync inner loop. Example: execute -- uv run --package levanter --group test pytest lib/levanter/tests/kernels/test_pallas_fused_cross_entropy_loss.py.watch -- <cmd> — rerun <cmd> on local file changes.release — terminate the holder job and clear the session file.Multi-host TPU types reserve more than one worker VM. Use --worker <index> with connect, execute, or watch to target a specific worker (execute and watch default to worker 0):
uv run scripts/iris/dev_tpu.py --config lib/iris/config/marin.yaml \
--tpu-name "$USER-v5p16" connect --worker 1
Use normal Iris tooling to inspect the backing cluster and holder job:
uv run iris --config=lib/iris/config/marin.yaml cluster dashboard
uv run iris --config=lib/iris/config/marin.yaml cluster vm status
uv run iris --config=lib/iris/config/marin.yaml job list --prefix /$USER/dev-tpu
uv run iris --config=lib/iris/config/marin.yaml job logs /$USER/dev-tpu-<name>
If worker bootstrap fails:
uv run iris --config=lib/iris/config/marin.yaml cluster vm logs <worker-id>
~/.cache/marin/dev_tpu_iris/.allocate terminal dies unexpectedly, use release to terminate the holder job and clear the stale state file.execute and watch already wrap the remote command in bash -lc; do not pass your own bash -c.Always pass --tpu-name to avoid collisions with other agents:
export TPU_NAME="${USER}-$(git rev-parse --abbrev-ref HEAD | tr '/' '-')"
uv run scripts/iris/dev_tpu.py --config lib/iris/config/marin.yaml --tpu-name "$TPU_NAME" allocate --tpu-type v5p-8
Normal cleanup is Ctrl-C in the allocate terminal. To clean up from another shell, run the release subcommand.