Rust async n'a jamais quitté l'état de MVP selon un expert
Original : Async Rust never left the MVP state
Pourquoi c'est important
Impact sur l'adoption de Rust dans l'embarqué et les systèmes contraints
Un ingénieur logiciel embarqué critique l'état actuel de Rust async, soulignant un problème de gonflement binaire important sur les microcontrôleurs. Il propose des améliorations au niveau du compilateur via un Project Goal pour résoudre ces problèmes de performance.
Dion, ingénieur logiciel embarqué chez Tweede Golf, explique que Rust async souffre d'un gonflement significatif du code binaire, particulièrement problématique sur les microcontrôleurs où chaque octet compte. L'analyse révèle qu'une fonction bar génère 360 lignes de MIR contre 23 pour la version non-async. Le compilateur crée une machine à états avec des variantes Unresumed, Returned, Panicked, et multiples états Suspend. Ce gonflement existe aussi sur serveurs mais y est moins perceptible. L'auteur a soumis un Project Goal pour améliorer ces optimisations directement dans le compilateur, cherchant un financement pour ce travail. Il propose de s'attaquer aux causes profondes plutôt qu'aux contournements existants.