Introducción a la Evaluación del Desempeño

Anuncio
Tópicos Especiales en Evaluación de
Desempeño
Evaluación de Desempeño de
Sistemas Informáticos
Introducción
Prof. Mariela J. Curiel H.
M. Curiel
1
-
Definición
- Cuán bien hace un sistema informático el
trabajo que se supone que tiene que hacer.
- Combinación de medidas, interpretación y
comunicación de la capacidad de un sistema
M. Curiel
2
¿ Para qué sirve la evaluación
del desempeño ?
? El desempeño es un criterio clave en el diseño,
adquisición y uso de sistemas de computación.
? La meta es lograr el mayor desempeño al
menor costo.
? Para evaluar el desempeño de los sistemas se
necesita un conocimiento básico de la
terminología y ciertas técnicas.
M. Curiel
Mariela J. Curiel H.
3
1
Tópicos Especiales en Evaluación de
Desempeño
¿ Para qué sirve la evaluación
del desempeño ?
?Comparar dos o más sistemas.
?Determinar el impacto de agregar/eliminar
un componente
?Determinar el valor óptimo de uno o varios
parámetros (tuning).
?Encontrar el dispositivo cuello de botella.
M. Curiel
4
¿ Para qué sirve la evaluación
del desempeño ?
?Performance Debugging
?Caracterizar la carga del sistema.
?Determinar el tiempo que falta para que
nuestros sistemas se saturen.
? Predecir el desempeño con una carga futura
M. Curiel
5
Problemas que se podrán resolver
al finalizar este curso
?Seleccionar la técnica adecuada de evaluación
y las métricas.
?Seleccionar y caracterizar la carga de trabajo.
? Realizar medidas en forma correcta.
?Usar herramientas estadísticas adecuadas.
?Diseñar experimentos para obtener la mayor
cantidad información con el menor número
posible de medidas o simulaciones
M. Curiel
Mariela J. Curiel H.
6
2
Tópicos Especiales en Evaluación de
Desempeño
Problemas que podremos resolver
al finalizar este curso
?Realizar correctamente modelos de
simulación e interpretar sus resultados.
?Usar modelos de colas simples para analizar
el desempeño de ciertos tipos de sistemas
M. Curiel
7
Técnicas de evaluación del
desempeño
Sistema
Experimentar con
Un modelo
Experimentar
con el Sistema real
Modelo
matemático
Modelo Físico
Analítico
Simulación
M. Curiel
8
Técnicas de evaluación del
desempeño
Los métodos para evaluar el desempeño de los
sistemas informáticos se pueden dividir en dos
principales áreas:
evaluación basada en medidas y
evaluación basada en modelos.
M. Curiel
Mariela J. Curiel H.
9
3
Tópicos Especiales en Evaluación de
Desempeño
Técnicas de evaluación del
desempeño
Los modelos se fundamentan, en
general, en la teoría de colas y se
pueden tratar mediante los métodos
analíticos que proporcionan la teoría
de colas, o por medio de la
simulación
M. Curiel
10
Técnicas de evaluación del
desempeño
Exit
Disk1
p
Enter
Disk2
1-p
CPU
Disk3
Disk1
1-p
CPU
Disk2
p
Disk3
Terminals
?En un QNM el sistema se
representa como una red de
colas.
?Las estaciones o centros de
servicio son los recursos
(discos, CPU, etc)
?Los clientes son los trabajos,
procesos, transacciones, o
cualquier otro tipo de entidad
activa.
M. Curiel
11
Técnicas de evaluación del
desempeño
?Con los modelos analíticos se busca predecir
el comportamiento del sistema resolviendo
alguna clase de algoritmo o fórmula cerrada
(exacta or aproximada)
?En la simulación se desarrolla un programa
que imita el comportamiento en el tiempo del
sistema bajo estudio.
M. Curiel
Mariela J. Curiel H.
12
4
Tópicos Especiales en Evaluación de
Desempeño
Factores que influyen en la
selección de la técnica de
evaluación
Modelo
Analítico
Flexibilidad
Alto
Simulación
Medidas
Alto
Bajo
Costo
Bajo
Medio
Alto
Credibilidad
Bajo
Medio
Alto
Precisión
Bajo
Medio
Alto
M. Curiel
13
Factores que influyen en la selección de la
técnica de evaluación
?Etapa del ciclo de vida del desarrollo del
software.
?Tiempo disponible.
?Herramientas disponibles.
?Nivel de precisión deseado.
?Costo.
?Credibilidad de los resultados.
M. Curiel
14
Ejemplo
t1 = time();
buscarCache ();
t2 = time();
if encontro T= t2-t1
Else
buscarMemoria ();
if encontro
T = t2 – t1
Modelo Analítico
Simulación
M. Curiel
Mariela J. Curiel H.
T = htc + (1 – h)tm
tc = tiempo de acceso al
cache
tm = tiempo de acceso a
la memoria
h = hit ratio
1 – h = miss
15
5
Tópicos Especiales en Evaluación de
Desempeño
Definiciones
?Métricas: valor usado para describir el
desempeño de un sistema.
?Parámetros: Todo lo que afecta las métricas.
?Factores: Es un conjunto reducido de los
parámetros.
M. Curiel
16
Tipos de métricas
Para cada servicio hay varias salidas posibles:
?Se prestó el servicio correctamente: Métricas de
rapidéz
?Se prestó incorrectamente: Es útil clasificar los
errores y determinar las probabilidades de
ocurrencia. Métricas de confiabilidad
?No se prestó el servicio: Es útil clasificar las fallas y
determinar las probabilidades de cada falla. Métricas
de disponibilidad.
M. Curiel
17
Métricas usadas comúnmente
Externas
?Tiempo de Respuesta: es el intervalo de tiempo
que transcurre entre la solicitud de un usuario al
sistema y la respuesta de este último.
?Throughput: es la tasa a la cual el sistema puede
atender las peticiones.
?Capacidad: Máxima cantidad de trabajo útil que
se puede realizar por unidad de tiempo.
M. Curiel
Mariela J. Curiel H.
18
6
Tópicos Especiales en Evaluación de
Desempeño
Métricas usadas comúnmente
Internas
?Longitud de Cola: es el número de clientes
(transacciones, mensajes, etc.) esperando por
recibir o recibiendo un servicio.
?Utilización de los dispositivos: es la fracción de
tiempo en la que un recurso está ocupado
sirviendo peticiones.
?Tiempo de servicio: tiempo que tarda un
dispositivo en servir una petición
M. Curiel
19
Tiempo de Respuesta
Capacidad
Teórica
1.0
throughput
Knee capacity
0.8
0.6
R
0.4 Nivel aceptable
0.2
0.0
0
Response
Time
Capacidad
Efectiva
2
4
6
8 10
Troughput (tps)
Load
M. Curiel
20
Tiempo de Respuesta
Tiempo
de respuesta
Tiempo Def 2
de respuesta
Def. 1
Tiempo
de reacción
Tiempo
de reflexión
tiempo
Usuario
Introduce
la peticion
Sistema
comienza
a procesar
la petición
Sistema
Sistema
comienza a Termina
responder de responder
M. Curiel
Mariela J. Curiel H.
Usuario
Introduce
la peticion
21
7
Tópicos Especiales en Evaluación de
Desempeño
Métricas usadas comúnmente
?Confiabilidad: se mide usualmente como la
probabilidad de error o el tiempo medio entre
errores .
?Disponibilidad: es la fracción de tiempo que
el sistema está disponible para atender las
peticiones de los usuarios.
M. Curiel
22
Clasificación de las métricas
?Mientras más alto el valor, mejor: HB
(Higher is better). Ejm. el throughput
?Mientras más bajo es el valor, mejor LB
(Lower is better). Ejm. El tiempo de
respuesta.
?Nominal es mejor NB (Nominal is best):
No se desean ni valores altos ni bajos
para estas métricas. Ejm. La utilización.
M. Curiel
23
Características de una buena
Métrica
?Linealidad
?Confiabilidad
?Repetibilidad
?Facilidad de medir
?Consistencia
M. Curiel
Mariela J. Curiel H.
24
8
Tópicos Especiales en Evaluación de
Desempeño
¿Cómo se establecen los
requerimientos de desempeño?
?Se deben establecer de forma precisa,
evitando afirmaciones vagas tales como :
Los tiempos de respuesta deben ser
satisfactorios para los usuarios finales.
? Algunos paquetes se pueden perder
? La disponibilidad debe mejorar
?
M. Curiel
25
¿Cómo se establecen los
requerimientos de desempeño?
?Se deben establecer metas específicas,
tales como:
- El tiempo medio entre fallas debe exceder las
10000 horas.
- El servidor de archivos debe tener una
disponibilidad de 98%.
- La probabilidad de perder un paquete debe ser
menor al 1%.
M. Curiel
26
¿Cómo se establecen los
requerimientos de desempeño?
?Realistas: puedan lograrse con la tecnología y
un diseño sensato.
?Razonables: los objetivos son una consecuencia
directa o indirecta de los requerimientos del
negocio.
?Cuantificables: deben ser expresados en
términos numéricos
?Medibles
M. Curiel
Mariela J. Curiel H.
27
9
Tópicos Especiales en Evaluación de
Desempeño
Pasos a seguir en un estudio de
evaluación del desempeño
?Definir el sistema bajo estudio y establecer
las metas
?Listar los servicios y las salidas
?Seleccionar las métricas
?Realizar una lista de los parámetros
?Seleccionar los factores a estudiar
M. Curiel
28
Pasos a seguir en un estudio de
evaluación del desempeño
?Seleccionar la técnica de evaluación a utilizar
?Seleccionar la carga de trabajo
?Diseñar los experimentos
?Analizar e interpretar los datos
?Presentar los resultados
M. Curiel
29
Bibliografía
? Daniel Menascé. Virgilio Almeida. Larry W. Dowdy.
Capacity Planning and Performance Modeling . Prentice
Hall, 1994.
? Raj Jain. The Art of Computer Systems Performance
Analysis, Wiley, 1991.
? David Lilja. Measuring Computer Performance.
Cambridge University Press. 2000.
M. Curiel
Mariela J. Curiel H.
30
10
Descargar