Arithmétique des ordinateurs

En simple précision, ajouter 1 à cent millions (10⁸) laisse le résultat inchangé. Quelle explication de ce phénomène est correcte ?

  1. ACent millions n'est pas représentable en simple précision et le résultat est NaN
  2. BIl n'y a qu'environ 7 chiffres significatifs et le 1 disparaît à l'arrondi
  3. CL'instruction d'addition est censée ignorer les calculs sur de grands nombres
Afficher la réponse et l'explication

Réponse : B. Il n'y a qu'environ 7 chiffres significatifs et le 1 disparaît à l'arrondi

La simple précision offre environ 7 chiffres significatifs et, au voisinage de cent millions, l'écart entre nombres représentables est de 8. 10⁸ + 1 tombe entre deux valeurs représentables et est arrondi à la plus proche, 10⁸ : le 1 disparaît. Ce phénomène de perte de l'information du plus petit terme lors de l'addition de nombres d'ordres de grandeur différents s'appelle l'absorption. Pour additionner de nombreuses petites valeurs, on les additionne des plus petites aux plus grandes ou l'on utilise une sommation compensée. Cent millions est représentable et ne donne pas NaN.

S'entraîner sur ce thème Retour au thème

Autres questions sur Arithmétique des ordinateurs

  1. Quel est l'objectif de la sommation de Kahan (sommation compensée), utilisée pour additionner un grand nombre de flottants ?
  2. Quel est l'avantage du calcul de a × b + c par une instruction FMA (multiplication-addition fusionnée) ?
  3. Quelle est la principale raison de l'emploi de bfloat16 pour l'entraînement en IA ?
  4. Lors de l'entraînement d'un réseau de neurones en FP16 (demi-précision : 1 bit de signe, 5 d'exposant, 10 de mantisse), quel problème survient fréquemment et se traite en multipliant la perte par un facteur (loss scaling) ?
  5. Quelle est la plus grande valeur finie représentable en FP16 (1 bit de signe, 5 bits d'exposant (biais 15), 10 bits de mantisse) ?