Running Neural Amp Modeler on embedded hardware
NAM a parcouru un long chemin, fonctionnant désormais sur des ordinateurs monocarte, des pédales comme la Daisy Seed et même des navigateurs web, et nous avons créé un loader NAM pour étudier le déploiement embarqué. Le défi était que NeuralAmpModelerCore n'était pas conçu pour l'embarqué, avec une mémoire limitée, l'absence d'un système d'exploitation et un budget temps réel strict, et sur la Daisy Seed A1-Nano, 2 secondes d'audio nécessitaient plus de 5 secondes de calcul. Les goulots d'étranglement étaient la taille du modèle, l'efficacité du calcul et le chargement du format .nam sur une mémoire très limitée, et nous avons ajouté des routines spécialisées et d'autres améliorations ciblées. Pour le chargement, nous avons développé un format binaire compact nommé .namb et un app compagnon qui convertit les fichiers .nam en .namb et les transfère au device via Bluetooth ou USB, sans perte de qualité. Après optimisation, le même modèle qui prenait initialement plus de 5 secondes pour 2 secondes d'audio tourne désormais en environ 1,5 seconde, laissant de la marge pour le traitement des effets et éclairant directement le design NAM embarqué avec l'approche Slimmable NAM, et nous publions l'ensemble du code source développé, y compris nam-binary-loader et les outils de chargement ainsi que l'exemple Daisy et les microbenchmarks détaillés sur le blog de João.