Donnez-moi du FP32 ou donnez-moi la mort ? Défis et solutions pour un raisonnement reproductible
Give Me FP32 or Give Me Death? Challenges and Solutions for Reproducible Reasoning
June 11, 2025
Auteurs: Jiayi Yuan, Hao Li, Xinheng Ding, Wenya Xie, Yu-Jhe Li, Wentian Zhao, Kun Wan, Jing Shi, Xia Hu, Zirui Liu
cs.AI
Résumé
Les modèles de langage de grande taille (LLMs) sont désormais intégrés dans divers domaines et ont démontré des performances impressionnantes. Cependant, les progrès reposent sur l'hypothèse que les scores de référence sont à la fois précis et reproductibles. Nous montrons que la reproductibilité des performances des LLMs est fragile : modifier la configuration du système, telle que la taille du lot d'évaluation, le nombre de GPU et la version du GPU, peut introduire des différences significatives dans les réponses générées. Ce problème est particulièrement prononcé dans les modèles de raisonnement, où de légères différences d'arrondi dans les premiers tokens peuvent se propager en chaînes de pensée divergentes, affectant finalement la précision. Par exemple, sous une précision bfloat16 avec un décodage gourmand, un modèle de raisonnement comme DeepSeek-R1-Distill-Qwen-7B peut présenter jusqu'à 9 % de variation en précision et une différence de 9 000 tokens dans la longueur de la réponse en raison des différences dans le nombre de GPU, le type de GPU et la taille du lot d'évaluation. Nous attribuons la cause fondamentale de cette variabilité à la nature non associative de l'arithmétique en virgule flottante sous une précision numérique limitée. Ce travail présente la première investigation systématique sur la manière dont la précision numérique affecte la reproductibilité dans l'inférence des LLMs. Grâce à des expériences soigneusement contrôlées sur divers matériels, logiciels et paramètres de précision, nous quantifions quand et comment les sorties du modèle divergent. Notre analyse révèle que la précision en virgule flottante — bien que cruciale pour la reproductibilité — est souvent négligée dans les pratiques d'évaluation. Inspirés par cela, nous développons un pipeline d'inférence léger, appelé LayerCast, qui stocke les poids en précision 16 bits mais effectue tous les calculs en FP32, équilibrant ainsi l'efficacité mémoire avec la stabilité numérique. Le code est disponible à l'adresse https://github.com/nanomaoli/llm_reproducibility.
English
Large Language Models (LLMs) are now integral across various domains and have
demonstrated impressive performance. Progress, however, rests on the premise
that benchmark scores are both accurate and reproducible. We demonstrate that
the reproducibility of LLM performance is fragile: changing system
configuration such as evaluation batch size, GPU count, and GPU version can
introduce significant difference in the generated responses. This issue is
especially pronounced in reasoning models, where minor rounding differences in
early tokens can cascade into divergent chains of thought, ultimately affecting
accuracy. For instance, under bfloat16 precision with greedy decoding, a
reasoning model like DeepSeek-R1-Distill-Qwen-7B can exhibit up to 9% variation
in accuracy and 9,000 tokens difference in response length due to differences
in GPU count, type, and evaluation batch size. We trace the root cause of this
variability to the non-associative nature of floating-point arithmetic under
limited numerical precision. This work presents the first systematic
investigation into how numerical precision affects reproducibility in LLM
inference. Through carefully controlled experiments across various hardware,
software, and precision settings, we quantify when and how model outputs
diverge. Our analysis reveals that floating-point precision -- while critical
for reproducibility -- is often neglected in evaluation practices. Inspired by
this, we develop a lightweight inference pipeline, dubbed LayerCast, that
stores weights in 16-bit precision but performs all computations in FP32,
balancing memory efficiency with numerical stability. Code is available at
https://github.com/nanomaoli/llm_reproducibility.