En architecture informatique, la loi d'Amdahl donne l'accélération théorique en latence de l'exécution d'une tâche à charge d'exécution constante que l'on peut attendre d'un système dont on améliore les ressources. Elle est énoncée par l'informaticien Gene Amdahl à l'AFIPS Spring Joint Computer Conference en 1967. La loi d'Amdahl peut être formulée de la façon suivante : où Slatence est l'accélération théorique en latence de l'exécution de toute la tâche ; s est le nombre de fils d'exécutions (threads) utilisés pour exécuter la tâche p est le pourcentage du temps d'exécution de toute la tâche concernant la partie bénéficiant de l'amélioration des ressources du système avant l'amélioration. De plus, montrent que l'accélération théorique de l'exécution de toute la tâche augmente avec l'amélioration des ressources du système et que, quelle que soit l'amélioration, l'accélération théorique est toujours limitée par la partie de la tâche qui ne peut tirer profit de l'amélioration. La loi d'Amdahl est souvent utilisée en calcul parallèle pour prédire l'accélération théorique lors de l'utilisation de plusieurs processeurs. Par exemple, si un programme a besoin de d'exécution sur un processeur uni-cœur et qu'une partie du programme qui requiert une heure d'exécution ne peut pas être parallélisée, même si les (p = 95 %) d'exécution restantes peuvent être parallélisées, quel que soit le nombre de processeurs utilisés pour l'exécution parallèle du programme, le temps d'exécution minimal ne pourra passer sous cette heure critique. Ainsi, l'accélération théorique est limitée au plus (1/(1 − p) = 20). On en déduit deux règles : premièrement, lors de l'écriture d'un programme parallèle, il faut limiter autant que possible la partie sérielle ; deuxièmement, un ordinateur parallèle doit être un excellent ordinateur sériel pour traiter le plus rapidement possible la partie sérielle. Une tâche exécutée par un système dont les ressources sont améliorées par rapport à un système similaire initial peut être séparée en deux parties : une partie ne bénéficiant pas de l'amélioration des ressources du système ; une partie bénéficiant de l'amélioration des ressources du système.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (1)
CS-307: Introduction to multiprocessor architecture
Multiprocessors are a core component in all types of computing infrastructure, from phones to datacenters. This course will build on the prerequisites of processor design and concurrency to introduce
Publications associées (32)
Personnes associées (3)
Concepts associés (2)
Microprocesseur multi-cœur
vignette|Un processeur quad-core AMD Opteron. vignette|L’Intel Core 2 Duo E6300 est un processeur double cœur. Un microprocesseur multi-cœur (multi-core en anglais) est un microprocesseur possédant plusieurs cœurs physiques fonctionnant simultanément. Il se distingue d'architectures plus anciennes (360/91) où un processeur unique commandait plusieurs circuits de calcul simultanés. Un cœur (en anglais, core) est un ensemble de circuits capables d’exécuter des programmes de façon autonome.
Accélération (informatique)
En architecture informatique, l'accélération (speedup en anglais) est une mesure du gain de performance entre deux systèmes traitant le même problème. Plus techniquement, c'est le gain de vitesse d'exécution d'une tâche exécutée par deux architectures similaires disposant de ressources différentes. La notion d'accélération a été établie par la loi d'Amdahl, qui se penchait principalement sur le calcul parallèle. Cependant, l'accélération peut être utilisée plus généralement pour montrer l'effet sur les performances lors de n'importe quelle amélioration des ressources.

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.