Browse Source

specs: prod moved to FLARE — fabric ring, extra RoCE rails, controller identity

Alexander Korolev 16 hours ago
parent
commit
fc3b948563
1 changed files with 37 additions and 0 deletions
  1. 37 0
      specs/tech-architecture/dsv41-1017-tuning.md

+ 37 - 0
specs/tech-architecture/dsv41-1017-tuning.md

@@ -326,3 +326,40 @@ continuation rows.
 выедает бюджет continuation rows («selected concurrency and verification width
 exceed available memory»), так что «маленький кэш строк + резиденты-скейлы» и
 есть рабочая точка, а не компромисс.
+
+## Прод переведён на FLARE (2026-10-24, 23:18 UTC)
+
+`4nodes-switch` (dgx1–4) теперь отдаёт `deepseek-v4.1-flash` из FLARE-пакета
+gb10 — тот же лейн, что на dgx5–8. Один и тот же рецепт
+(`dsv41-flash-1017-4x-flare-gb10`), один и тот же эндпоинт
+`http://192.168.88.14:30000/v1`. Переход вскрыл четыре вещи, которых лейн
+dgx5–8 не показывал (у него всё «просто работало»):
+
+1. **`flare download` не принимает approval-флаги** — `--dangerously-approve-key`
+   даёт «unexpected argument». Гейт подписи стоит только на `orbit run`
+   (download и так не спрашивает). Лаунчер теперь передаёт `accept_key` /
+   `accept_publisher` исключительно в `run_cmd`.
+2. **Форма фабрики — свойство кластера, а не рецепта.** Прод-решётка это звезда
+   через SW2-MUC; FLARE падает с «no fabric link from rank 0 to rank 2».
+   Лечится `--roce-ring` (эмуляция кольца поверх свитча: 2 rail'а на соседа +
+   CPU-relay). Флаг живёт в `[flare.clusters."4nodes-switch"].extra_flags`,
+   sparks-лейн его не наследует.
+3. **Лишние RoCE-адреса ломают матрицу линков.** У dgx1/dgx2 были подняты
+   вторые порты CX7 в легаси-подсетях (192.168.100.x/101.x), которых нет у
+   пиров → «fabric links must be symmetric» → отказ. Гасятся хуком
+   `[before_serve."4nodes-switch"]`; сама решётка живёт на f0-портах.
+4. **Орбитальный контроллер — это личность, а не хост.** На dgx1 не было
+   `~/.config/flare/orbit.toml` и ключа контроллера; агенты слушают ключ dgx5.
+   Скопированы orbit-файл и `controller.key` — теперь `orbit status --cluster
+   prod4` работает и с dgx1 (одна учётка контроллера на две машины).
+
+Заодно в лаунчере: ledger теперь пишется и для FLARE (`runlock open` усыновляет
+уже запущенный лейн — без записи второй лаунчер не видел открытого прогона), а
+проба флота/`health` спрашивает каждый кластер его собственным орбитальным
+именем (раньше все кластеры смотрели в `sparks`, поэтому живой прод-лейн
+выглядел пустым).
+
+Время первого старта: пакет 511.3 GB уже лежал на локальном NVMe dgx1
+(перелит node-to-node с dgx5 за ~30 мин, ~250–300 MB/s по фабрике), ранги
+приняли срезы по CX7 (~200 s каждый), затем RoCE-транспорт и серв — итого
+~8 мин от `orbit run` до `/v1/models`.