ChatPaper.aiChatPaper

Dammi FP32 o dammi la morte? Sfide e soluzioni per il ragionamento riproducibile

Give Me FP32 or Give Me Death? Challenges and Solutions for Reproducible Reasoning

June 11, 2025
Autori: Jiayi Yuan, Hao Li, Xinheng Ding, Wenya Xie, Yu-Jhe Li, Wentian Zhao, Kun Wan, Jing Shi, Xia Hu, Zirui Liu
cs.AI

Abstract

I Large Language Model (LLM) sono ormai fondamentali in vari ambiti e hanno dimostrato prestazioni impressionanti. Tuttavia, il progresso si basa sul presupposto che i punteggi dei benchmark siano sia accurati che riproducibili. Dimostriamo che la riproducibilità delle prestazioni degli LLM è fragile: modifiche alla configurazione del sistema, come la dimensione del batch di valutazione, il numero di GPU e la versione della GPU, possono introdurre differenze significative nelle risposte generate. Questo problema è particolarmente evidente nei modelli di ragionamento, dove piccole differenze di arrotondamento nei token iniziali possono propagarsi in catene di pensiero divergenti, influenzando infine l'accuratezza. Ad esempio, con precisione bfloat16 e decodifica greedy, un modello di ragionamento come DeepSeek-R1-Distill-Qwen-7B può mostrare una variazione fino al 9% nell'accuratezza e una differenza di 9.000 token nella lunghezza della risposta a causa di differenze nel numero di GPU, nel tipo e nella dimensione del batch di valutazione. Rintracciamo la causa principale di questa variabilità nella natura non associativa dell'aritmetica in virgola mobile con precisione numerica limitata. Questo lavoro presenta la prima indagine sistematica su come la precisione numerica influisca sulla riproducibilità nell'inferenza degli LLM. Attraverso esperimenti accuratamente controllati su vari hardware, software e impostazioni di precisione, quantifichiamo quando e come le uscite del modello divergono. La nostra analisi rivela che la precisione in virgola mobile, sebbene cruciale per la riproducibilità, è spesso trascurata nelle pratiche di valutazione. Ispirati da ciò, sviluppiamo una pipeline di inferenza leggera, denominata LayerCast, che memorizza i pesi con precisione a 16 bit ma esegue tutti i calcoli in FP32, bilanciando efficienza di memoria e stabilità numerica. Il codice è disponibile all'indirizzo 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.
PDF152June 12, 2025