Ley de Amdahl

 La ley de Amdahl es un modelo matemático que describe la relación entre la aceleración esperada de la implementación paralela de un algoritmo y la implementación serial del mismo algoritmo

Técnicamente la ley de Amdahl trata sobre la aceleración S que se puede alcanzar a partir de las modificaciones (mejoras) de una porción P de un cálculo.


Por ejemplo, si se realiza una mejora del 30% en el tiempo de ejecución del cálculo, entonces la porción modificada (mejorada) será 0.3
Y si la porción modificada se ejecuta el doble de rápido, entonces la aceleración será igual a 2.

  
Esta fórmula se deriva de lo siguiente:
Asumamos que el tiempo que toma el cálculo original es 1 (para una unidad de tiempo cualquiera)

  
Esta fórmula se deriva de lo siguiente:
El tiempo que toma el nuevo cálculo es igual a:
Al tiempo que toma la ejecución de la porción no modificada

(1-P)

Más el tiempo que toma la ejecución de la porción modificada.


  Esta fórmula se deriva de lo siguiente:
El tiempo que toma la ejecución de la porción modificada es igual al tiempo que le tomaba originalmente dividida por la aceleración.
P/S

Ley de Amdahl

Si se considera el número de procesadores (N) en la relación tendremos



  
Si consideramos el rendimiento que se obtiene cuando se agregan más procesadores a una máquina, 
  
Cada vez que se dobla el número de procesadores la aceleración disminuye
De esta manera se tiende al límite siguiente:
La aceleración de un programa paralelo está limitada por la porción serial del mismo


  
Si el 95% de un programa es paralelizable la máxima aceleración obtenida es de 20x

Comentarios

Entradas populares