Analyse des performances

Deux programmes comportant le même nombre d'instructions sont exécutés à la suite, l'un à 1000 millions d'instructions par seconde, l'autre à 500 millions. Quelle est la vitesse moyenne globale ?

  1. A750 millions d'instructions par seconde
  2. BEnviron 707 millions d'instructions par seconde
  3. CEnviron 667 millions d'instructions par seconde
Afficher la réponse et l'explication

Réponse : C. Environ 667 millions d'instructions par seconde

Avec I instructions chacun, les temps valent I ÷ 1000 et I ÷ 500, soit 3I ÷ 1000 au total. Les 2I instructions étant exécutées dans ce temps, la vitesse moyenne vaut 2I ÷ (3I ÷ 1000) ≒ 667. Le programme lent prenant plus de temps, la moyenne est tirée vers la valeur la plus faible. Pour moyenner des vitesses (taux) portant sur une même quantité de travail, on utilise la moyenne harmonique et non la moyenne arithmétique.

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

Autres questions sur Analyse des performances

  1. En mesurant la vitesse de calcul avec la petite boucle ci-dessus, le temps reste presque nul même pour N grand. Quelle est la cause la plus probable ?
  2. Pourquoi, lors de la mesure du temps d'exécution d'un programme, répète-t-on souvent la mesure en écartant les premiers résultats ?
  3. Quelle association entre le problème posé par une mesure unique d'un traitement très court et sa solution est correcte ?
  4. Quelle est la différence correcte entre « temps réel écoulé » (wall-clock time) et « temps CPU » ?
  5. Quelle description du débit (throughput) et de la latence, indicateurs de performance d'un serveur, est correcte ?

Comparatifs sur ce thème