[sparsepixels] support asymmetric pool sizes in sparsepixels sparse pooling - #1522
Merged
JanFSchulte merged 2 commits intoAug 11, 2026
Merged
Conversation
JanFSchulte
requested changes
Aug 10, 2026
| // features zeroed, matching the dense layer dropping that window; zero-feature pixels are inert in | ||
| // every downstream sparse kernel. The averaging divides by the full pool area as one reciprocal | ||
| // multiply per axis (skipped for a unit axis, whose reciprocal 1.0 the fixed-point type cannot | ||
| // hold); for square pools this reproduces the previous two-multiply arithmetic exactly. |
Contributor
There was a problem hiding this comment.
Please remove mentions of a "previous version", this will be meaningless for anyone reading the code in the future.
| constexpr int out_height = in_height / pool_height; | ||
| constexpr int out_width = in_width / pool_width; | ||
| // Unsigned reciprocals: 1/2 = 0.5 needs the unsigned [0, 1) range (signed ap_fixed<10,0> tops | ||
| // out just below 0.5 and would wrap). Truncation at 10 fractional bits matches the previous |
Contributor
There was a problem hiding this comment.
Again, don't compare to any previous implementations, just describing what the current code does is sufficient.
JanFSchulte
approved these changes
Aug 11, 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.
For sparsepixels models, the current sparse pooling assumes square pool size only, this PR adds support for asymmetric pool sizes. It is tested ok with new models converted and synthesized. Like before, it does not touch anything outside the sparsepixels module. New test added to pytest for this.