LLM et les limites de l'optimisation automatique de code
David Andersen a expérimenté l'utilisation de grands modèles de langage (LLM) pour optimiser du code qui trouve la différence entre les plus petits et les plus grands nombres dont la somme des chiffres est égale à 30 dans une liste d'un million d'entiers aléatoires. Le code initial en Python et Rust était lent. Bien que le LLM ait amélioré certaines parties, comme la fonction de somme des chiffres, il a manqué une optimisation cruciale : vérifier si un nombre est pertinent *avant* le calcul coûteux de la somme des chiffres. L'intervention manuelle, impliquant un générateur de nombres aléatoires plus rapide, la parallélisation et le prétraitement, a accéléré le code Rust d'un facteur 55. Cela souligne les limites des LLM en matière d'optimisation de code, en particulier pour les problèmes complexes nécessitant une compréhension algorithmique approfondie et des stratégies de parallélisation. L'ingéniosité humaine reste cruciale.