Skip to content

[FEATURE] Enable the fused NEON WaveNet engine (AArch64 / Apple Silicon)#656

Draft
rikkus wants to merge 2 commits into
sdatkinson:mainfrom
rikkus:fused-optimisation
Draft

[FEATURE] Enable the fused NEON WaveNet engine (AArch64 / Apple Silicon)#656
rikkus wants to merge 2 commits into
sdatkinson:mainfrom
rikkus:fused-optimisation

Conversation

@rikkus

@rikkus rikkus commented Jul 20, 2026

Copy link
Copy Markdown

This PR is only an enabler for the fused NEON WaveNet engine (implemented in NeuralAmpModelerCore — see sdatkinson/NeuralAmpModelerCore#308) in plugin builds:

  • adds NAM_ENABLE_FUSED to the macOS, iOS, and Windows build configs
  • registers wavenet/fused.cpp (and wavenet/a2_fast.cpp) in the two Xcode projects
  • bumps the NeuralAmpModelerCore submodule to the head of that PR (09d46b0)

Checklist item Answer
format.bash Run, but it made changes to code this PR doesn't touch, so perhaps an incompatible version of clang-format. I didn't commit the changes as it will just cause formatting churn.
VST3 passes unit tests (VST3PluginTestHost suite) — macOS Yes — 47/47 passed (arm64 native; the x86_64 slice also passes 47/47 under Rosetta)
VST3 passes unit tests — Windows Not tested — no Windows machine available
Adds/removes/renames plugin parameters? No (sub-items N/A)
Adds/removes graphical assets? No

rikkus and others added 2 commits July 12, 2026 21:52
Point NeuralAmpModelerCore at rikkus/OptimisationWorkOnNeuralAmpModelerCore
(optimise-for-apple-silicon @ 09d46b0) and wire the fused NEON engine into
plugin builds:

- Add NAM/wavenet/fused.cpp/h to the macOS Xcode project (mirroring the
  a2_fast entries) and define NAM_ENABLE_FUSED on mac/win.
- iOS: add a2_fast.cpp + fused.cpp to the iOS project and define
  NAM_ENABLE_A2_FAST + NAM_ENABLE_FUSED there too.

See NeuralAmpModelerCore/docs/fused-engine.md for performance analysis.

Co-authored-by: Cursor <cursoragent@cursor.com>
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.

1 participant