Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado...
Transcript of Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado...
![Page 1: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/1.jpg)
Procesamiento ParaleloModelado analıtico de programas paralelos
Javier Iparraguirre
Universidad Tecnologica Nacional, Facultad Regional Bahıa Blanca11 de Abril 461, Bahıa Blanca, Argentina
http://www.frbb.utn.edu.ar/hpc/
27 de marzo de 2016
![Page 2: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/2.jpg)
Algunas preguntas
• Una vez que tenemos el programa paralelo• ¿Como sabemos que aceleramos la ejecucion?• ¿Como sabemos que es la mejor solucion?• ¿Hay una solucion ideal?• ¿Podemos decir que usamos los recursos de la mejor
manera posible?
![Page 3: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/3.jpg)
Ocho procesadores
![Page 4: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/4.jpg)
A partir del caso planteado
• En un algoritmo secuencial se puede evaluar a partir deltiempo de ejecucion
• En un algoritmo paralelo el tiempo de ejecucion dependedel tamano del problema, la cantidad de procesadores ylas comunicaciones
• Las metricas son fundamentales a la hora de evaluardesempeno en maquinas paralelas
• Hoy vamos a ver las mas usadas
![Page 5: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/5.jpg)
Antes de ver metricas...
• Dado un algoritmo en particular• Necesitamos dos implementaciones (una serie y una
paralela) para definir metricas• En la practica no siempre contamos con las dos
implementaciones• En la literatura siempre se supone que tenemos las dos
implementaciones para definir metricas
![Page 6: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/6.jpg)
Tiempos
• Ts tiempo de ejecucion de un programa en serie• Tp tiempo de ejecucion de un programa paralelo• Ambos tiempos se miden desde que se lanza al programa
hasta que finaliza• Ts se considera como la mejor implementacion serie
conocida para el algoritmo a estudiar
![Page 7: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/7.jpg)
Perdidas totales (total overhead)
To = p ∗ Tp − Ts
• Esta metirca apunta a cuantificar los costos de lascomunicaciones o sincronizaciones
• p es el numero de procesadores• Idealmente To = 0
![Page 8: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/8.jpg)
Speedup
S = Ts/Tp
• Indica cuanto hemos aumentado el desempeno• El valor de S va desde 1 hasta p• Cuando decimos que se acelera una aplicacion en 10x se
refiere al speedup
![Page 9: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/9.jpg)
Eficiencia
E = S/p
• Es una medida de la fraccion del tiempo en que losprocesadores son usados efectivamente
• El valor de E va de 0 a 1• En terminos practicos, nos da una idea de la calidad del
uso de la arquitectura que disponemos
![Page 10: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/10.jpg)
Costo
C = p ∗ Tp
• Refleja el tiempo que cada procesador usa para resolver elproblema
• El costo optimo es el que crece como el algoritmo seriemas rapido conocido
![Page 11: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/11.jpg)
Granularidad y desempeno
• Si agregamos procesadores, aumenta la probabilidad detener perdidas por comunicacinoes
• A mayor granularidad, mas procesadores en juego• Este es un factor a tener en cuenta en cualquier
implementacion• No hay reglas exactas, en cada implementacion particular
hay que buscar un compromiso entre granularidad ydesempeno
![Page 12: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/12.jpg)
Ejemplo granularidad
![Page 13: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/13.jpg)
Escalabilidad
• Supongamos que tenemos una implementacion dedeteccion de bordes de una imagen que funcionaaceptablemente con 8 procesadores
• ¿Funciona bien con 32?• ¿Funciona bien con 256?• ¿Funciona bien con 1024?
• Este es el concepto de escalabilidad
![Page 14: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/14.jpg)
Escalabilidad
• Supongamos que tenemos una implementacion dedeteccion de bordes de una imagen que funcionaaceptablemente con 8 procesadores
• ¿Funciona bien con 32?• ¿Funciona bien con 256?• ¿Funciona bien con 1024?• Este es el concepto de escalabilidad
![Page 15: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/15.jpg)
Ejemplo escalabilidad (cantidad procesadoresconstante)
![Page 16: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/16.jpg)
Ejemplo real de Speedup
![Page 17: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/17.jpg)
Ejemplo real de Eficiencia
![Page 18: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/18.jpg)
El la realidad...
• Es muy difıcil poder mantener speedup lineal• Es muy difıcil poder mantener eficiencia cercana a 1• Siempre hay que encontrar un punto de compromiso
![Page 19: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/19.jpg)
Isoeficiencia
![Page 20: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/20.jpg)
Analis asintotico de algoritmos paralelos
• Consideremos el problema de ordenar una lista de nelementos
• El algoritmo serie mas rapido conocido es de orden O (nlog n)
• Miremos lo que indican las metricas para 4implementaciones paralelas del algoritmo
• ¿Cual es el mejor? ¿El mas rapido?
![Page 21: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/21.jpg)
Cuatro implementaciones paralelas del mismoproblema
![Page 22: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/22.jpg)
Observaciones
• A1 es el mas rapido (fila Tp), pero demanda n * nprocesadores (fila p)
• Si vemos la eficiencia, podemos decir que A2 y A4 son losmejores
• Si vemos el costo (fila p Tp) podemos decir que A2 y A4son optimos segun el costo
![Page 23: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/23.jpg)
Ley de Amdahl
• Da la idea del maximo a mejorar de un sistema si solo unaporcion del mismo es acelerado
• En procesamiento paralelo da la idea del maximo teoricode una implementacion
• Dada una fraccion mejorada (Fmej) a un speedup de lafraccion (Fmej)
SpeedupAML = Tmejoras/Tsinmejoras
SpeedupAML = 1/((1 − Fmej) + (Fmej/Smej))
![Page 24: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/24.jpg)
Ejemplo Ley Amdahl
![Page 25: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/25.jpg)
Resumiendo
• En algoritmos paralelos las metricas son importantes• Hay varias metricas a tener en cuenta• Dependiendo de cual sea la metrica elegida, se puede
evaluar cual es la mejor implementacion
![Page 27: Procesamiento Paralelo - Modelado analítico de programas ... Procesamiento Paralelo Modelado anal´ıtico de programas paralelos Javier Iparraguirre Universidad Tecnologica Nacional,](https://reader034.fdocument.pub/reader034/viewer/2022051812/602f78c444ec1171e91b7ceb/html5/thumbnails/27.jpg)
Referencias
• A. Grama, G. Karypis, V. Kumar, A. Gupta. Introduction toParallel Computing (2nd Edition). Addison Wesley, 2003.
• J. L. Hennessy, D. A. Patterson. Computer Architecture: AQuantitative Approach (4th Edition). Morgan Kaufmann,2006.