Si une tâche prend 10 heures sur un processeur 1 GHz, faut-il 5 heures sur un processeur 2 GHz?

12

Si une tâche prend 10 heures sur un processeur 1 GHz, faut-il 5 heures sur un processeur 2 GHz?

Ou suis-je trop simplifier le problème?

anévrisme
la source

Réponses:

20

Comme indiqué par les autres réponses, même si le CPU fonctionne 5 fois plus vite, tout ne sera pas 5 fois plus rapide, car parfois l'ordinateur passe du temps à ne pas travailler avec le CPU, mais à attendre d'autres opérations, telles que le disque ou le réseau I / O.

En plus de cela, les processeurs modernes sont assez complexes en interne et font toutes sortes de trucs sophistiqués (pipelining, prédiction de branche, exécution dans le désordre) pour accélérer les choses. Cela peut fonctionner mieux ou non sur un processeur plus rapide, donc même pour les tâches liées au processeur, l'accélération ne sera probablement pas 5 fois.

Elle peut être inférieure, voire supérieure, selon la nature de la tâche et son adéquation avec les optimisations que le processeur essaie d'utiliser. De plus, ces optimisations elles-mêmes seront probablement différentes dans un nouveau modèle de processeur (même s'il s'agit de la même série).

sleske
la source
1
+1 pour une explication très lucide de quelques points très subtils.
Shinrai
2
Parfois, vous pouvez avoir plus de cœurs qui donnent des repères plus élevés sur des tâches telles que l'encodage vidéo, mais de nombreuses autres tâches ne verront pas les accélérations à moins qu'elles puissent utiliser tous les cœurs.
Jared Updike
8

Non, c'est le meilleur 1 cas possible. Si votre tâche nécessite par exemple un accès au réseau ou au disque dur, ce sera un goulot d'étranglement que vous ne pourrez pas compenser avec un processeur plus rapide.

1 ) en supposant qu'aucune autre modification n'a été apportée au système et au processeur

Tobias Kienzler
la source
8

Non. Tout le temps nécessaire à l'exécution d'une application ne dépend pas uniquement de la vitesse du processeur.
Par exemple:

  • Les entrées et sorties des disques dépendent de la vitesse de rotation des plateaux de disques
  • La mémoire lit, écrit peut être plus lente ou plus rapide selon le cache
  • La planification des processus peut être différente.
Benoit
la source
2

Si vous créez, par exemple, un programme qui calcule des nombres premiers et absolument aucun accès E / S ou accès réseau n'est effectué, la vitesse n'est toujours pas double. Cela peut être très différent.

S'il s'agit d'un CPU de même marque, génération, technologie, nombre de transistors, jeux d'instructions et même taille de pièces en nanomètres, une double fréquence peut signifier une double vitesse. Cela signifie que si vous n'enregistrez rien et qu'il n'y a pas de goulot d'étranglement sur le cache du processeur.

sinni800
la source
Vous oubliez d'autres éléments comme la mémoire cache, qui ne doubleront pas de vitesse. Le CPU exécute des instructions à partir du cache après tout (dans le meilleur des cas).
harrymc
Je n'ai pas oublié le cache, lisez les deux derniers mots :). La condition préalable est qu'il n'y a pas de goulot d'étranglement sur ledit cache, que le cache fonctionne toujours assez vite
sinni800