Arithmétique des ordinateurs

Quel est l'objectif de la sommation de Kahan (sommation compensée), utilisée pour additionner un grand nombre de flottants ?

  1. ARéduire de moitié le nombre d'additions pour accélérer le calcul
  2. BConvertir tous les flottants en entiers avant de les additionner
  3. CEnregistrer la part perdue et la réinjecter à l'étape suivante pour limiter l'erreur
Afficher la réponse et l'explication

Réponse : C. Enregistrer la part perdue et la réinjecter à l'étape suivante pour limiter l'erreur

À chaque ajout d'une petite valeur à une somme devenue grande, les chiffres de poids faible de la petite valeur sont perdus par absorption, et leur accumulation produit une erreur importante. La sommation de Kahan calcule après chaque addition la différence entre « l'augmentation effective » et « la valeur à ajouter », enregistre la part perdue dans une variable de compensation et l'ajoute à la valeur suivante avant l'addition. Le coût de calcul est multiplié par quelques unités, mais l'accumulation des erreurs est fortement réduite. Il ne s'agit ni de réduire le nombre d'additions ni de convertir en entiers.

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

Autres questions sur Arithmétique des ordinateurs

  1. Quel est l'avantage du calcul de a × b + c par une instruction FMA (multiplication-addition fusionnée) ?
  2. Quelle est la principale raison de l'emploi de bfloat16 pour l'entraînement en IA ?
  3. 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) ?
  4. 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) ?
  5. Quelle répartition des deux formats FP8, E4M3 (4 bits d'exposant, 3 de mantisse) et E5M2 (5 bits d'exposant, 2 de mantisse), est courante ?