Está en la página 1de 11

24/08/2016

Métricas de Rendimiento

Profesora: Elba Karen Sáenz García


Facultad de Ingeniería UNAM
Cómputo de Alto Desempeño

Karen Sáenz 1

Rendimiento de los sistemas paralelos


• Rendimiento puede verse como una medida
de que tan “bien” un sistema, o los
componentes que lo constituyen, lleva a cabo
las tareas asignadas.

Karen Sáenz 2

1
24/08/2016

Escalabilidad.
• Este término se refiere al estudio del cambio
en las medidas de rendimiento de un sistema
cuando una o varias características del sistema
son variadas.
Características que generalmente se cambian es
• número de procesadores.
• Granularidad del problema

Karen Sáenz 3

Granularidad
• Granularidad consiste en la cantidad de cómputo
con relación a la comunicación.
• En Granularidad Fina o Fine-grained
– las tareas individuales son relativamente pequeñas en
término de tiempo de ejecución.
– La comunicación entre los procesadores es frecuente.
• En cambio en Granularidad gruesa o
– la comunicación entre los procesadores es poco
frecuente y se realiza después de largos periodos de
ejecución.

Karen Sáenz 4

2
24/08/2016

Métricas de rendimiento
ambientes paralelos
• Conocer cuánto más rápido ejecuta una
aplicación en un computador paralelo.
• Conocer cuál es el beneficio obtenido cuando
se usa paralelismo y cuál es la aceleración que
resulta por el uso de dicho paralelismo.

Karen Sáenz 5

Métricas de rendimiento
• Tiempo de Ejecución:
Ts en un programa secuencial, tiempo que
transcurre entre el comienzo y la finalización de
la ejecución del programa.
Tp en un programa paralelo, el tiempo que
transcurre entre el comienzo y la finalización del
último proceso que termina la ejecución.

Karen Sáenz 6

3
24/08/2016

Métricas de rendimiento
Aceleración (Speedup)
• La aceleración puede ser definida como el
radio

• Existen diversas formas de expresar la


aceleración que dependen de la forma en que
se defina lo que es el Tiempo de Ejecución
Secuencial y Paralelo.

Karen Sáenz 7

Métricas de rendimiento
Aceleración (Speedup)
• Aceleración Relativa: El Tiempo de Ejecución Secuencial
usado es el tiempo total de ejecución del programa
paralelo cuando éste es ejecutado sobre un único
procesador de la computadora paralela

• Aceleración real: El Tiempo de Ejecución Secuencial usado es


el tiempo del mejor programa secuencial para resolver el
problema.

Karen Sáenz 8

4
24/08/2016

Pintando una casa


• Supongamos que deseamos pintar una casa que tiene 10 habitaciones. Si
me demoro 1 día por habitación, la casa completa me demorara 10 días.

• Si contrato un equipo de 10 personas, cada una podría pintar una pieza y


la casa estaría terminada en poco más de 1 día; no exactamente 1 día,
pues el equipo demorara un pequeño tiempo en asignación de piezas,

• Si contrato 20 personas, la casa estar ía terminada en un poco más de 5


días.

• Si contrato 200?
– Mayor tiempo empleado en asignación
– Mayor tiempo de coordinación de las personas en cada pieza.

Karen Sáenz 9

Límite Speed-UP
Un aspecto importante a considerar es que todo programa paralelo tiene una parte secuencial
que eventualmente limita la aceleración que se puede alcanzar en una plataforma paralela.

Para un problema particular el Speed-up tiene un límite


• Dado un problema, por ejemplo multiplicación de matrices de 100 × 100, a medida que
incremento el número de procesadores, 5, 10, 100, se obtienen cada vez mejores speed-ups,
pero llegará el momento en que la adición de nuevos procesadores no mejorará el speed-up.

Algunos factores que limitan el speed-up son:


• Overhead de software
• Des-balance de carga
• Overhead de comunicación/sincronización
• Overhead secuencial que no puede paralelizarse

Una forma de mejorar el speedup es aumentar el tamaño del problema a medida que se
adicionan más procesadores

Karen Sáenz 10

5
24/08/2016

Ley de Amhdahl
• Propuesta por Gene Amdahl , indica la mejora de rendimiento
que se puede obtener al incrementar las unidades de
procesamiento.
• Supongamos que se desea resolver un problema que tiene
una fracción serial, es decir no puede paralelizarse, y otra
paralela.
• Si la porción secuencial demora Ts en un procesador y la
fracción paralela demora Tp, también en un procesador,
entonces, el speedup alcanzable por n procesadores es:

Karen Sáenz 11

Ley de Amhdahl

= = donde P=1-f = fracción paralela y


f= fracción seria o secuencial
Karen Sáenz 12

6
24/08/2016

Ley de Amhdahl

• Amdahl concluyó que las computadoras paralelas no


podrían entregar speedups cada vez mayores, pues el
speedup estaba limitado por la porción secuencial de
los problemas, independientemente de la
computadora paralela.

Karen Sáenz 13

Ley de Amhdahl
• En ciertas aplicaciones es importante obtener
soluciones con una alta resolución y/o
precisión, sin importar que el problema se
demore mucho.
• La ley de Amdahl se debe modificar para
considerar el aumento de la carga de trabajo

Karen Sáenz 14

7
24/08/2016

Consideraciones
• Un sistema paralelo consiste en un problema dado y una
arquitectura paralela.

• Un sistema paralelo es escalable cuando su rendimiento


continua mejorando en la medida que el tamaño del
sistema crece, es decir

– crece el tamaño del problema que queremos resolver (o su


precisión)
– y crece el número de unidades de procesamiento de la
computadora paralela

Como medida de rendimiento podemos usar, el speed-up

Karen Sáenz 15

Eficiencia
• La Eficiencia de un sistema paralelo se define como:
• =

• La eficiencia es una medida del grado de speedup


alcanzado en relación al máximo.

• La eficiencia permite conocer que tan bien se están


aprovechando los recursos de la máquina.

• Para cargas de trabajo fijas 0<E<1

Karen Sáenz 16

8
24/08/2016

Ejercicio
• Obtener el speedup teórico para fracciones
paralelas de 50%, 90% y 99% y un número de
unidades de procesamiento de 10,100,100 y
10000
n P=.50 P=0.90 P=0.99
10
100
1000
10000

Karen Sáenz 17

Ejercicio
• Si se tiene una computadora con arquitectura
multicore. ¿Cuál es el speed-up teórico dado
que reduce el trabajo a la mitad, para 2 y 8
núcleos?

Karen Sáenz 18

9
24/08/2016

Ejercicio
• Completar la siguiente tabla:

hilos Tiempo SpeedUp Eficiencia


ejecución
1 8.35
2 21.183
3 22.184
4 25.068

Karen Sáenz 19

Ejemplos
• Para el ejercicio anterior, calcular la fracción
serial f.

Karen Sáenz 20

10
24/08/2016

Otros ejemplos en clase

Karen Sáenz 21

Referencias
• Fernando R. Rannou, Departamento de
Ingeniería Informática- Universidad de
Santiago de Chile.
• https://computing.llnl.gov/tutorials/parallel_c
omp/
• Introduction to parallel programming, Intel
Software College, junio 2007

Karen Sáenz 22

11

También podría gustarte