Skip to content

Implement NEON mixing for AArch64 to replace scalar fallback - #409

Merged
flibitijibibo merged 1 commit into
FNA-XNA:masterfrom
isztldav:neon-generic-mixer
Jul 27, 2026
Merged

Implement NEON mixing for AArch64 to replace scalar fallback#409
flibitijibibo merged 1 commit into
FNA-XNA:masterfrom
isztldav:neon-generic-mixer

Conversation

@isztldav

Copy link
Copy Markdown
Contributor

NEON implementation of the generic channel mixer (FAudio_INTERNAL_Mix_Generic_NEON). I believe the code can be optimized further but the goal was to match the implementation of the SSE FAudio_INTERNAL_Mix_Generic_SSE2 variant, not to beat it.

Performance:
src→dst ; speedup
4 → 2 ; 2.12x
8 → 8 ; 1.90x
4 → 8 ; 1.79x
8 → 2 ; 1.71x
2 → 2 ; 1.32x
6 → 8 ; 1.03x

  • I confirm that I am the author of this code and release it to the FNA project under the Zlib license. This contribution does not contain code from other sources, including code generated by a Large Language Model ("AI").

@flibitijibibo
flibitijibibo merged commit 06f72ad into FNA-XNA:master Jul 27, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants