Add checked native Stack recipes and an audio-block benchmark - #72
Draft
izaak wants to merge 3 commits into
Draft
Conversation
Recognize eligible concrete checked loops through immutable values and ordered effects, and generate precompiled arithmetic from the same recipes. Add an opt-in Stack compiler path for pointwise maps, one-pole and biquad loops. Retain ordinary bytecode behind a shared guarded execution boundary, including state publication and cancellation fallback. Consolidate bridge case tables, retain only consumed analysis metadata, and format all pointwise recipes alike.
Add gain, offset, square and smootherstep using recipe definitions and existing test infrastructure. These demonstrate zero and one coefficient ports plus reused intermediate values without additional interpreter machinery.
Compare ordinary optimized Stack and native loops across all ten recipes in f32 and f64. Measure complete 240-sample calls with host staging, persistent recurrence state, output consumption and a cancellation callback installed. Report paired timing medians and spread, with compilation and backend creation separately. Keep gain, biquad and smootherstep first in the output. Reuse the same host setup and output/state comparisons without additional dependencies.
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.
This adds an opt-in native Stack path for eligible checked loops, plus a benchmark of complete audio-block calls. Work in progress: shared for early feedback on the architecture and benchmark; the design is still being developed.
Builds on #71, which builds on #70. The base is
refactor/checked-side-tables, so this PR contains only the following three commits. Once #71 is merged, this work can be rebased and retargeted tomain.f32andf64, measuring complete 240-sample calls with host staging, persistent recurrence state, output consumption, and a cancellation callback. Report paired timing medians and spread, with compilation and backend creation measured separately.