RENDIMIENTO
INTEGRANTES:
Ø
BELLINES, ALEJANDRA INES
Ø
BENITEZ, MARIA DEL CARMEN
L.U. 26759
Ø
BLANCO, MARA
L.U. 26786
Ø
BUJAKIEWIEZ, MIRTA INES
L.U. 23018
Ø
ENCINAS, EDUARDO ADRIAN
L.U. 21237
Ø
ESCALANTE, MARIA ELISA
L.U. 27049
Ø
FERNANDEZ, ELISABETH
LILIAN
L.U. 27095
Ø
ZALAZAR,
FERNANDO GABRIEL
L.U. 26354
INTRODUCCION A LA MEDICION, CONTROL Y EVALUACION DEL RENDIMIENTO
Es importante poder determinar con que
efectividad administra los recursos un sistema determinado.
Existe actualmente una mejora en el uso
de los recursos, pero:
< Muchas instalaciones realizan muy poco o
ningún control o evaluación.
< Cuando se hacen controles específicos se
generan grandes cantidades de datos que no se sabe como interpretar porque muy
pocas veces las instalaciones cuentan con personal instruido en lo que se
refiere a técnicas de análisis de rendimiento.
Durante los primeros años del desarrollo
de las computadoras:
Ø El hardware representaba el costo
dominante de los sistemas debido a que los estudios del rendimiento se
concentraban en él.
Actualmente podemos observar que el
software:
Ø Representa una porción cada vez mayor de
los presupuestos informáticos.
Ø Incluye: S.O. de
multiprogramación/multiprocesamiento, sistemas de comunicaciones de datos, de
administración de bases de datos, sistemas de apoyo a varias aplicaciones, etc.
Ø Frecuentemente oculta el hardware al
usuario creando una máquina virtual.
Un
software deficiente y/o mal utilizado puede ser causa de un rendimiento pobre
del hardware.
Es
importante controlar y evaluar el rendimiento del hardware y del software.
TENDENCIAS DEL RENDIMIENTO
Con los avances de la tecnología de
hardware los costos del mismo han decrecido, se supone que esta tendencia
continuará.
Los costos de trabajo personal han ido
aumentando:
Ø Significa un porcentaje importante del costo
de los sistemas informáticos.
Ø Se debe reformular el aspecto del
rendimiento del hardware base y medirlo de manera mas adaptada a la
productividad humana.
La llegada del microprocesador:
Ø Ha permitido bajar el costo de los ciclos
de CPU.
Ø Ha desplazado el foco de atención de la
evaluación del rendimiento a otras áreas, por ejemplo, la utilización de
dispositivos de entrada/salida.
También influyen sobre la evaluación del
rendimiento, aspectos como:
Ø Construcción de redes.
Ø Procesamiento distribuido.
Las conexiones se hacen con redes y no
solo con computadoras específicas:
Ø Se puede disponer de cientos o miles de
sistemas de computación.
Ø Se puede acceder a complejos sistemas de
comunicaciones de datos.
NECESIDAD DEL CONTROL Y DE LA
EVALUACION DEL RENDIMIENTO
Los objetivos en la evaluación del
rendimiento generalmente son:
Ø EVALUACIÓN DE SELECCIÓN: Se debe decidir si la adquisición de un sistema de
computación es apropiado.
Ø PROYECCION DEL RENDIMIENTO: Se debe estimar el rendimiento de un sistema
inexistente, es decir, un nuevo sistema o componente del hardware o software.
< Asegurar que el sistema cumpla con sus
metas de rendimiento.
< Ayudar a estimar el impacto de los
cambios planeados.
< Proporcionar los datos necesarios para
tomar decisiones estratégicas
En las primeras etapas del
desarrollo de un nuevo sistema se intenta predecir:
< Que tipo de aplicaciones correrán en el
sistema.
< Las cargas de trabajo que las
aplicaciones deberán manejar.
Durante el desarrollo e
implementación de un nuevo sistema se intenta determinar:
< La mejor organización del hardware.
< Las estrategias de administración de
recursos que deberán implementarse en el sistema operativo.
< Si el sistema cumple o no con sus
objetivos de rendimiento.
Los procesos de sintonización
tienden a mejorar el rendimiento en base a ajustar el sistema a las
características de la instalación.
MEDICIONES DEL
RENDIMIENTO
El rendimiento expresa la manera
o la eficiencia con que un sistema de computación cumple con sus metas.
Es una cantidad
relativa más que absoluta pero suele hablarse de medidas absolutas de
rendimiento.
Algunas medidas son difíciles de cuantificar, por
ejemplo, facilidad de uso
Otras medidas son fáciles de cuantificar, por
ejemplo, acceso a un disco
en una unidad de tiempo.
Las mediciones de rendimiento se pueden orientar:
Ø Hacia el usuario, por ejemplo, tiempos de respuestas.
Ø Hacia el sistema, por ejemplo, utilización de la CPU.
Las siguientes mediciones son cantidades
probabilísticas:
Ø TIEMPOS DE REGRESO:
Tiempo desde la entrada
del trabajo hasta su regreso al usuario (para procesamientos por lotes).
Ø TIEMPOS DE RESPUESTAS: Tiempo de regreso de un sistema
interactivo.
Ø TIEMPO DE REACCION DEL SISTEMA: Tiempo
desde que el usuario presiona ENTER hasta que se da la primera sección de
tiempo de servicio.
Otras medidas del rendimiento utilizadas
son:
Ø VARIACION DE LOS TIEMPOS DE RESPUESTA (o de otras de las variables aleatorias consideradas)
< Es una medida de dispersión.
< Es una medida de predecibilidad.
Ø CAPACIDAD DE EJECUCION: Es la medida de la ejecución de trabajo
por unidad de tiempo.
Ø CARGA DE TRABAJO: Es la medida de la cantidad de trabajo
que ha sido introducido en el sistema.
Ø CAPACIDAD: Es el rendimiento máximo que un sistema
puede tener siempre que:
< Esté listo para aceptar más trabajos.
< Haya alguno inmediatamente disponible.
Ø UTILIZACION: Es la fracción de tiempo que un recurso
está en uso. Es, deseable un gran porcentaje de utilización pero este puede ser
el resultado de un uso ineficiente.
Cuando se
aplica a la CPU se debe distinguir entre:
< Uso en trabajos productivos de
aplicación.
< Uso en sobrecarga del sistema.
TECNICAS DE EVALUACIÓN DEL RENDIMIENTO
TIEMPOS:
Los
tiempos proporcionan los medios para realizar comparaciones rápidas del
hardware.
MEZCLAS DE INTRUCCIONES:
Se
utiliza un promedio de varios tiempos de las instrucciones mas apropiadas para
una aplicación determinada:
< Los equipos pueden ser comparados con
mayor certeza de la que proporcionan por sí solos los tiempos.
Son
útiles en comparaciones rápidas del hardware.
PROGRAMAS DEL NUCLEO:
Un programa del núcleo es un
programa típico que puede ser ejecutado en una instalación.
Se
utilizan los tiempos estimados que suministran los fabricantes para cada
máquina y se corre el programa típico en las distintas máquinas para
obtener su tiempo de ejecución.
< Pueden ser útiles para la evaluación de
ciertos componentes del software, como por ejemplo, compiladores.
MODELOS ANALITICOS:
Son representaciones matemáticas de
sistemas de computación o de sus componentes.
Los modelos analíticos requieren un gran nivel matemático del evaluador
y son confiables sólo en sistemas sencillos. En sistemas complejos pueden
invalidar su utilidad y aplicabilidad.
PUNTOS DE REFERENCIAS:
Son programas reales que el evaluador
ejecuta en la
máquina que se está evaluando.
Generalmente es un programa de
producción típico de la instalación y
que se ejecuta con regularidad.
Se deben seleccionar cuidadosamente los puntos de referencia para que
sean representativos de los trabajos de la instalación.
Un aspecto importante es que los efectos del software se experimentan en
vez de estimarse.
PROGRAMAS SINTETICOS:
Combinan las técnicas de
los núcleos y los puntos de referencia.
Son programas reales diseñados para ejercitar características
específicas de una máquina.
SIMULACION:
Es una técnica con
la que se desarrolla un modelo computarizado del sistema que se está evaluando.
Es posible
preparar un modelo de un sistema inexistente y ejecutarlo para ver como se
comportaría en ciertas circunstancias, con lo cual se evitaría la construcción
de sistemas mal diseñados.
Pueden ser manejados por eventos, los cuales son
producidos en el simulador según distribuciones probabilísticas.
O manejados
por libreto, controlados por datos obtenidos en forma empírica y
manipulados cuidadosamente para reflejar el comportamiento anticipado del
sistema simulado.
Control
de rendimiento:
Es la recolección y análisis de
información relativa al rendimiento del sistema existente.
Permite localizar embotellamientos con rapidez. Puede ayudar a decidir
la forma de mejorar el rendimiento.
El
control del rendimiento puede hacerse por medio de técnicas de hardware y
software.
Ø Los
monitores:
< Indican con precisión como está funcionando un sistema.
< Producen grandes cantidades de datos que
deben ser analizados manualmente o por el sistema.
< Son de mucha ayuda para evaluar sistemas
en desarrollo y tomar decisiones de diseños adecuados.
Ø Los
monitores de software:
< Generalmente son económicos.
< Pueden distorsionar las lecturas del
rendimiento debido a que consumen recursos del sistema.
Ø Los
monitores de hardware:
< Generalmente son mas costosos.
< Su influencia sobre la operación del
sistema es mínima.
Los rastros
de ejecución de instrucciones o de módulos pueden revelar embotellamiento.
Un rastreo de
ejecución de módulos puede mostrar que se está ejercitando un pequeño
subconjunto de módulos durante gran parte del tiempo.
Ø Los diseñadores deberán optimizarlo para
mejorar el rendimiento del sistema.
Ø Se podría eliminar el costo de optimización de los módulos pocos usados.
EMBOTELLAMIENTOS Y SATURACION
Ciertos recursos pueden
sufrir embotellamientos que limitan el rendimiento del sistema.
Ø No pueden realizar su parte del trabajo.
Ø Otros recursos pueden estar con exceso de
capacidad.
Se produce un embotellamiento
en un recurso cuando el tráfico de trabajos o procesos de este alcanza su
capacidad límite.
Ø El recurso se satura.
Ø Los procesos que compiten por el recurso
comienzan a interferirse unos a otros, por ejemplo, la hiperpaginación:
< Ocurre cuando el almacenamiento principal
está lleno.
< Los conjuntos de trabajo de los procesos
no pueden ser mantenidos
simultáneamente en el almacenamiento principal.
Para detectar los
embotellamientos se debe controlar cada cola de peticiones de los recursos.
El aislamiento de los
embotellamientos es una parte importante de la afinación de la sintonización
del sistema.
Los embotellamientos pueden eliminarse, aumentando la capacidad de los recursos y/o añadiendo mas recursos de ese tipo en ese punto del sistema.
Ciclos de retroalimentación
El rendimiento
de un sistema operativo puede ser sensible a su estado actual.
Un ciclo de
retroalimentación es una situación en la cual la información del estado actual
del sistema se pone a disposición de las peticiones entrantes.
RETROALIMENTACION NEGATIVA
Las tasas de llegadas de nuevas peticiones
pueden decrecer como resultado de la información que se está retroalimentando.
Construye a la
estabilidad de los sistemas de colas:
Ø
Impiden que las colas crezcan indefinidamente.
Ø
Hace que la longitud de las colas se mantenga cerca de sus valores
medios.
RETROALIMENTACION POSITIVA
La información retroalimentada provoca un
incremento de algún parámetro.
Se debe evitar que, por ejemplo:
Ø
El sistema operativo detecte capacidad disponible de CPU, e informe al
planificador de trabajos que admita más trabajos en la mezcla de
multiprogramación, con esto se incrementa el uso de la CPU.
Ø
Al incrementarse la mezcla de multiprogramación, hace decrecer la
cantidad de memoria que se puede asignar a cada trabajo, el número de fallos de
página puede incrementarse y la utilización de la CPU puede decrecer.
PUEDE PRODUCIR INESTABILIDAD:
Debe diseñarse
con mucha prudencia y se deben controlar los efectos de cada cambio incremental
para ver si resulta una mejora anticipada. Si un cambio incremental deteriora
el rendimiento se podría estar operando en un rango inestable.
![]()
Número de visitantes actuales disponible desde el 14/07/2002:
Autor: lrmdavid@exa.unne.edu.ar
Ó FACENA - http://exa.unne.edu.ar
Servicios WEB: webmaster@exa.unne.edu.ar