7,294
stars
+0+2+36
958
forks
75
watchers
–
prs
–
issues
0
releases
–
discussions
README
ANE Training — Backpropagation on Apple Neural Engine Training neural networks directly on Apple's Neural Engine (ANE) via reverse-engineered private APIs. No CoreML training APIs, no Metal, no GPU — pure ANE compute. Project Scope & Intent I'm genuinely grateful for all the attention this project has received — I never expected a weekend research hack to blow up like this. Thank you to everyone who starred, forked, ran benchmarks on their own hardware, and shared the work. It means a lot. That said, I want to set clear expectations about what this project is and isn't. This is a research project, not a production framework. The goal was to demonstrate that training on the Apple Neural Engine — and potentially other NPUs — is possible, and that the barrier has always been software support, not hardware capability. The ANE is a remarkably capable piece of silicon that Apple restricts to inference-only use through CoreML. This project bypasses that restriction using reverse-engineered private APIs to show what's possible when you give the hardware a chance. What This Project Is - A proof of concept for ANE training via _ANEClient and _ANECompiler private APIs - A set of benchmarks documenting real ANE performance characteristics (throughput, power, SRAM behavior) - A reference for anyone exploring direct ANE access outside CoreML - Research code that I update when I find something interesting What This Project Is Not - A maintained framework or library - A replacement for CoreML, MLX, llama.cpp, or any production inference stack - A path to training large models on consumer hardware (yet) On The Hype Some coverage of this project has overstated its implications. To be clear: - Training works, but utilization is low (~5-9% of peak) with significant engineering challenges remaining - Many element-wise operations still fall back to CPU - This does not replace GPU training for anything beyond small research models today The honest results — including all limitations — are documented in the accompanying articles: - Part 1: Reverse Engineering - Part 2: Benchmarks - Part 3: Training On Maintenance I don't intend to grow this into a large community project. My focus is on original research (compiler infrastructure for edge AI optimization), and maintaining an open-source framework takes time away from that. That said: - I'll keep pushing updates when I discover something interesting - Bug fixes and benchmark contributions (especially on hardware I don't own) are welcome - Feature requests will likely go unaddressed — but feel free to fork - PRs will be merged at a relatively slow pace, otherwise I become the bottleneck for community growth around this tech Fork it, build on it This is MIT licensed for a reason. Everyone now has access to AI-assisted development tools that can adapt and extend code in hours. If this project is useful to you — take it, modify it, build something be