feat(snn-head): add opt-in three-chip resident lifecycle - #9
Closed
QuelThalasGrace wants to merge 1 commit into
Closed
QuelThalasGrace wants to merge 1 commit into
QuelThalasGrace wants to merge 1 commit into
Conversation
This was referenced Sep 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add opt-in three-chip residency through
SNN_HEAD_RESIDENT=1. Initialization prepares and loads all five layers once; repeated complete eight-timestep chunks attach each layer, INIT its state and run without reloading weights. CPU preprocessing and layer ordering stay in the SNN application. Default builds retain the single-chip path.The module adds
snn_head_initialize(), resident lifecycle state, selected assets/build flags, a dedicated linker and application tests. It uses one shared runtime receiver and is not reentrant. Errors stop later layers and subsequent requests. This batch contains application logic only; SRAM auditing and portable host-record parsing follow separately.Validation: on the actual split runtime chain, the clean snapshot passes resident ASan/UBSan tests (2/2), existing SNN host tests (4/4), focused runtime tests and output-layout regressions. Single-chip stats-off/on and resident N307FD cross-builds pass; stack symbols are 4096 bytes, all five selected PBCA match their embedded ELF bytes, and 15 CPU parameter identities are preserved. Changed C/C++ formatting and whitespace checks pass.
Draft dependency: exact reception still has a potentially blocking FIFO MMIO read inside IRQ. The README states the required architecture review and historical SOC lane0/communication preparation. No new board performance or repeatability acceptance follows from these host/build results.
This is batch 8/9 replacing #1. Review only this delta against
codex/pr-snn-three-assets; merge predecessors first, then retarget/rebase onto refreshed main while keeping the scope separate. Do not merge into the predecessor branch or delete it before retargeting its dependent PR. Colleagues own review and merging; no automatic merge is enabled.Source head:
8cd3fa32d33413176906785c315836321b23b1f0; source tree:6894d2adb5a82362c0bcdd8a6569783d0be5fa12.Dependency: #8. Ordered replacement series: #2 → #3 → #4 → #5 → #6 → #7 → #8 → #9 → #10.
CI status at submission: the repository pre-commit.ci check reports ERROR, as it also did on original #1. The reported message is
error during ci config; repository CI configuration needs separate attention. The focused remote host and cross-build results above do not mean all GitHub checks passed.