Estimer un temps de calcul
Exercice de TD · niveau 3 (difficile) · NSI (terminale), chapitre 15 — Histoire de l'informatique
Énoncé
Estimer un temps de calcul.
L'ENIAC effectuait environ additions par seconde. Un cœur de processeur des années 2020 en effectue de l'ordre de par seconde.
- Combien de temps chaque machine met-elle pour faire additions ?
- Quel est le facteur d'accélération ? À combien de doublements correspond-il ?
- Soixante-quinze ans séparent les deux machines. Si la vitesse avait doublé tous les deux ans, quel facteur obtiendrait-on ? Comment expliquer l'écart ?
Corrigé
- ENIAC : secondes, soit environ jours. Processeur actuel : seconde.
- Facteur . Or : environ 18 doublements.
- À un doublement tous les deux ans pendant ans, on attendrait , soit un million de fois plus que le facteur observé. L'écart s'explique : la loi de Moore porte sur le nombre de transistors, pas sur la vitesse d'un cœur. Les transistors supplémentaires ont servi à autre chose — mémoires caches, traitement de plusieurs instructions à la fois, et surtout multiplication des cœurs. Comparer une addition par cœur, c'est comparer ce qui a le moins progressé.
eniac = 5_000 # additions par seconde
actuel = 1_000_000_000 # additions par seconde et par coeur
travail = 10 ** 9
print(travail / eniac, "secondes sur ENIAC")
print(travail / eniac / 86400, "jours")
print(actuel / eniac, "fois plus rapide")Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.