# Аппаратная совместимость 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 не выполнялись. После добавления ключа пользователь может выполнить на станции: ```bash 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`.