our_knp/reports/2026-10-15/Отчёт_Аппаратный_аудит_и_статус.md

9.6 KiB
Raw Blame History

Аппаратная совместимость Pet lab, остановка мухи и ключ Git

15 октября 2026. Этот отчёт дополняет 2026-10-15-pets-knp.md и устраняет возможную двусмысленность между исполнением в KNP на GPU и готовностью к физическому Алтаю.

Поместятся ли детекторы и выход в Алтай?

Текущая сеть кошек/собак не является готовой для загрузки на Алтай-2 без изменений. Это подтверждено статическим аудитом настоящих сохранённых весов. Фактический аппаратный placement всего графа не выполнялся.

Источник ограничений: локальный официальный documents/reference/knp-2.0-ru.txt, раздел «Общие сведения о процессоре Алтай-2», печатнаяс.22 оригинального PDF. В нём различаются16-ядерный прототип (8192нейрона) и максимальная масштабируемая конфигурация (131072нейрона). Эти характеристики относятся кАлтаю-2; автоматически переносить их наАлтай-1/3 нельзя.

В Pet lab всего39458 моделируемых нейронов:39200детекторов+256hidden+2output. В описанный16-ядерный прототип вся сеть не помещается уже по числу нейронов. Для более крупной конфигурации одного числа нейронов недостаточно: нужны проверка распределения по ядрам, входных линий, маршрутизации и синаптической памяти.

Есть и независимые численные несовместимости текущего экспорта:

  • Документированная вариативность —4величины веса на нейрон (знак выбирается операцией). В сохранённых детекторах максимум55 различных ненулевых абсолютных весов на нейрон; вhidden —110. Это без дополнительныхbias/resetсвязей, которые не улучшают ситуацию. Проверка —np.unique(abs(nonzero_weights)) по каждому постсинаптическому нейрону.
  • Документированный потенциал хранится какsigned16, диапазон−32768..32767. В текущем hidden при суммировании одного входного пакета наvalidation получены значенияот−492108до569761. Наш CUDA guard обеспечивает точностьцелойарифметикиfloat32 до2^24, но это НЕ аппаратный16-битный диапазон Алтая.
  • Между KNP-графами хост исполняет фиксированное pooling/root-L2 и перепаковывание счётчиков. Это не единый аппаратный граф, даже если научиться размещать отдельные популяции.

Выходных нейронов мало, однако отдельно разместить их недостаточно для заявления о переносе всего распознавателя. Потребуются переобучение/квантование под ограниченную палитру, изменение кодирования/масштабов, аппаратно допустимый pooling и полноценный прогон через официальныйbackend/GoldenModel. Итоговаяточностьпослеадаптации пока неизвестна. Успешный nativeMNIST — другойграф, его доказательство не переносится наPet lab.

Машинный результат аудита: reports/pets-knp-artifacts/hardware-feasibility.json; станция /home/user/run/pets-knp/hardware-feasibility.json.

Муха — остановлено по просьбе пользователя

Сначала была начата игрушечная модель с вручную заданными связями. Созданы experiments/fly-knp/controller.cpp, build.py, worker.py, скопированы в /home/user/KNP/fly-knp; отдельный бинарник /home/user/run/fly-knp/controller успешно собран. Он НЕ является моделью настоящей мухи.

Пользователь уточнил, что имеет в виду реальные опубликованные веса/коннектом, затем явно попросил остановить работу и вернуться позже. Поэтому контроллер не запускался, симуляция/сайт не создавались и не развёрнуты. Проверка процессов на станции не обнаружила fly-controller/server. Заготовка сохранена только как отменённый прототип; готовым результатом её не считать.

Для будущего продолжения найдены первичные источники, только просмотрены, код/данные не скачивались и не исполнялись:

  • https://github.com/philshiu/Drosophila_brain_model — исходный LIF model по коннектому, связанный со статьёй Shiu etal.,Nature2024, https://www.nature.com/articles/s41586-024-07763-9.
  • https://github.com/eonsystemspbc/fly-brain — опубликованная реализация модели поFlyWire с несколькимиCPU/GPUбэкендами. README описывает управление нейроннойактивностью и экспортспайков; само наличиеконнектома не гарантируетвосстановленногоповедения животноговпроизвольномвиртуальномтеле.

Нужно будет отдельно выбрать точный источник/commit, модель нейронов, набор данных и интерфейс тела. Автоматически работу с мухой не возобновлять.

SSH-ключ для Git на рабочей станции

По запросу пользователя создан отдельныйEd25519ключ на user@10.9.8.230: ~/.ssh/id_ed25519_git_snw, публичная часть ~/.ssh/id_ed25519_git_snw.pub. Он не защищёнpassphrase для обычного автоматическогоSSHдоступа с этой машины. Приватный ключ имеетmode600, каталог.ssh700, publickey644. Приватная часть не выводилась, не скачивалась и не включалась в отчёт/архив.

Создан новый ~/.ssh/config (его до этого не было), толькоHostgit.snw.su/Usergit/IdentityFileэтогоключа/IdentitiesOnlyyes. ssh -G git.snw.su подтвердил нужныйIdentityFile. Пользователь самостоятельно добавляет публичную часть в настройки своегоGitсервера. Доступ кGit по новому ключу ещё не проверен, потому что публичный ключ ещё не добавлен в аккаунт. Gitremote не менялся, commit/push не выполнялись.

После добавления ключа пользователь может выполнить на станции:

ssh -T git@git.snw.su
# Если origin до сих пор HTTPS и нужен SSH:
git -C ~/KNP remote set-url origin git@git.snw.su:int/our_knp.git
# Перед push проверить изменения и создать нужный commit самостоятельно.

Публичный архив отчётов

По запросу пользователя создан /public/knp-reports-2026-10-15.zip. Он содержит локальныеотчёты/артефакты, корневыеREADME/AGENTS/HANDOFF/журналы иMarkdownпередачиэкспериментов, с относительнымипутями иSHA256manifest. В том числе вreportsуже естьпакеты моделей/proofs/source,сохранённыеранее. Этоархивотчётов,неполнаякопиявсейбиблиотекиPDFилирепозиторияKNP.

Каталог /public обслуживаетсясуществующимCaddyhost public.agent.snw.su; конфигурация не изменялась. SSHкаталоги/приватныеключи вне набора архивируемыхфайлов. Проверки ZIP CRC и SHA каждого вложенного файла завершены успешно; публичная ссылка https://public.agent.snw.su/knp-reports-2026-10-15.zip вернулаHTTP200. SHA256 самогоZIP опубликован рядом в .zip.sha256. Последнее состояние переноса всех отчётов на станцию — report-transfer-status.json.