Está en la página 1de 8

Rendimiento

Rendimiento
1. 2. 3. 4. 5. 6. 7. Introduccin a la Medicin, Control y Evaluacin del Rendimiento Tendencias Importantes que Afectan a los Aspectos del Rendimiento Necesidad del Control y de la Evaluacin del Rendimiento Mediciones del Rendimiento Tcnicas de Evaluacin del Rendimiento Embotellamientos y Saturacin Ciclos de Retroalimentacin

Introduccin a la Medicin, Control y Evaluacin del Rendimiento


Un sistema operativo es en primer lugar un administrador de recursos, por ello es importante poder determinar con qu efectividad administra sus recursos un sistema determinado. Generalmente hay un gran potencial de mejora en el uso de los recursos existentes, pero:

Muchas instalaciones realizan muy poco o ningn control y evaluacin. Cuando se hacen controles especficos se generan grandes cantidades de datos que muchas veces no se sabe cmo interpretar.

Las instalaciones rara vez cuentan con personal versado en las tcnicas de anlisis de rendimiento. Actualmente y segn la tendencia apreciable:

El software representa una porcin cada vez mayor de los presupuestos informticos. El software incluye el S. O. de multiprogramacin / multiproceso, sistemas de comunicaciones de datos, sistemas de administracin de bases de datos, sistemas de apoyo a varias aplicaciones, etc. El software frecuentemente oculta el hardware al usuario creando una mquina virtual, que est definida por las caractersticas operativas del software.

Un software deficiente y / o mal utilizado puede ser causa de un rendimiento pobre del hardware, por lo tanto es importante controlar y evaluar el rendimiento del hardware y del software.

Rendimiento

Tendencias Importantes que Afectan a los Aspectos del Rendimiento


Con los avances en la tecnologa de hardware los costos del mismo han decrecido drsticamente y todo hace suponer que esta tendencia continuar. Los costos de trabajo (personal) han ido aumentando:

Significan un porcentaje importante del costo de los sistemas informticos. Se debe reformular el aspecto del rendimiento del hardware base y medirlo de manera ms adaptada a la productividad humana.

El advenimiento del microprocesador en la dcada de 1.970:


Ha permitido bajar considerablemente el costo de los ciclos de cpu. Ha desplazado el foco de atencin de la evaluacin del rendimiento a otras reas donde los costos no disminuyeron proporcionalmente.

Tambin influyen en los puntos de vista sobre la evaluacin del rendimiento aspectos tales como:

Construccin de redes. Procesamiento distribuido.

Las conexiones se hacen con redes y no solo con computadoras especficas:


Se puede disponer de cientos o miles de sistemas de computacin. Se puede acceder a complejos sistemas de comunicaciones de datos.

Necesidad del Control y de la Evaluacin del Rendimiento


Los objetivos corrientes en la evaluacin del rendimiento generalmente son:

Evaluacin de seleccin: o El evaluador debe decidir si la adquisicin de un sistema de computacin es apropiada. Proyeccin del rendimiento: o El evaluador debe estimar el rendimiento de un: Sistema inexistente. Nuevo sistema. Nuevo componente de hardware o de software. Control del rendimiento: o El evaluador acumula datos del rendimiento de un sistema o componente existente para.

En las primeras fases del desarrollo de un nuevo sistema se intenta predecir:

Rendimiento

La naturaleza de las aplicaciones que corrern en el sistema. Las cargas de trabajo que las aplicaciones debern manejar.

Durante el desarrollo e implementacin de un nuevo sistema se intenta determinar:


La mejor organizacin del hardware. Las estrategias de administracin de recursos que debern implantarse en el S. O. Si el sistema cumple o no con sus objetivos de rendimiento.

Frecuentemente son necesarios procesos de configuracin de los sistemas para que puedan servir a las necesidades. Los procesos de sintonizacin del sistema tienden a mejorar el rendimiento en base a ajustar el sistema a las caractersticas de la instalacin del usuario.

Mediciones del Rendimiento


El rendimiento expresa la manera o la eficiencia con que un sistema de computacin cumple sus metas. El rendimiento es una cantidad relativa ms que absoluta pero suele hablarse de medidas absolutas de rendimiento, ej.: nmero de trabajos atendidos por unidad de tiempo. Algunas mediciones son difciles de cuantificar, ej.: facilidad de uso. Otras mediciones son fciles de cuantificar, ej.: accesos a un disco en la unidad de tiempo. Las mediciones de rendimiento pueden estar:

Orientadas hacia el usuario, ej.: tiempos de respuesta. Orientadas hacia el sistema, ej.: utilizacin de la cpu.

Algunas mediciones del rendimiento comunes son:


Tiempo de regreso: Tiempo desde la entrega del trabajo hasta su regreso al usuario. Tiempo de respuesta: Tiempo de regreso de un sistema interactivo. Tiempo de reaccin del sistema: Tiempo desde que el usuario presiona enter hasta que se da la primera seccin de tiempo de servicio.

Otras medidas del rendimiento utilizadas son:

Varianza de los tiempos de respuesta: o Es una medida de dispersin.

Rendimiento Si es pequea indica tiempos prximos a la media. Si es grande indica tiempos alejados de la media. Es una medida de la predecibilidad. Capacidad de ejecucin: o Es la medida de la ejecucin de trabajo por unidad de tiempo. Carga de trabajo: o Es la medida de la cantidad de trabajo que Capacidad: o Es la medida de la capacidad de rendimiento mxima que un sistema puede tener siempre Utilizacin: o Es la fraccin de tiempo que un recurso est en uso. o Cuando se aplica a la cpu se debe distinguir entre: Uso en trabajos productivos de aplicacin. Uso en sobrecarga del sistema.
o o o

Tcnicas de Evaluacin del Rendimiento


Tiempos: Los tiempos proporcionan los medios para realizar comparaciones rpidas del hardware. Una posible unidad de medida es el mips: milln de instrucciones por segundo. Los tiempos se usan para comparaciones rpidas; se utilizan operaciones bsicas de hardware. Mezclas de instrucciones: Se usa un promedio ponderado de varios tiempos de las instrucciones ms apropiadas para una aplicacin determinada; Son tiles para comparaciones rpidas del hardware. Programas del ncleo: Un programa ncleo es un programa tpico que puede ser ejecutado en una instalacin. o Se utilizan los tiempos estimados que suministran los fabricantes para cada mquina para calcular su tiempo de ejecucin. o Se corre el programa tpico en las distintas mquinas para obtener su tiempo de ejecucin. Modelos analticos: Son representaciones matemticas de sistemas de computacin o de componentes de sistemas de computacin. Generalmente se utilizan los modelos de:

Teora de colas. Procesos de Markov.

Rendimiento Requieren un gran nivel matemtico del evaluador y son confiables solo en sistemas sencillos, ya que en sistemas complejos los supuestos simplificadores pueden invalidar su utilidad y aplicabilidad. Puntos de referencia (o programas de comparacin del rendimiento) Son programas reales que el evaluador ejecuta en la mquina que se est evaluando. Generalmente es un programa de produccin:

Tpico de muchos trabajos de la instalacin. Que se ejecuta con regularidad.

El programa completo se ejecuta en la mquina real con datos reales. Se deben seleccionar cuidadosamente los puntos de referencia para que sean representativos de los trabajos de la instalacin. Programas sintticos Combinan las tcnicas de los ncleos y los puntos de referencia. Son programas reales diseados para ejercitar caractersticas especficas de una mquina. Simulacin Es una tcnica con la cual el evaluador desarrolla un modelo computarizado del sistema que se est evaluando. Los simuladores son muy aplicados en las industrias espacial y de transportes. Los simuladores pueden ser:

Manejados por eventos: o Son controlados por los eventos producidos en el simulador segn distribuciones probabilsticas. Manejados por libreto: o Son controlados por datos obtenidos de forma emprica y manipulados cuidadosamente para reflejar el comportamiento anticipado del sistema simulado.

Control del rendimiento Es la recoleccin y anlisis de informacin relativa al rendimiento del sistema existente. Permite localizar embotellamientos con rapidez.

Rendimiento Puede ayudar a decidir la forma de mejorar el rendimiento. Puede ser til para determinar la distribucin de trabajos de varios tipos; permitira aconsejar el uso de compiladores optimizadores o compiladores rpidos y sucios. El control del rendimiento puede hacerse por medio de tcnicas de hardware o de software. Los monitores de software:

Pueden distorsionar las lecturas del rendimiento debido a que consumen recursos del sistema. Generalmente son econmicos.

Los monitores de hardware:

Su influencia sobre la operacin del sistema es mnima. Son ms costosos.

Los monitores:

Producen grandes cantidades de datos que deben ser analizados manualmente o por sistema. Indican con precisin cmo est funcionando un sistema. Son de mucha ayuda para evaluar sistemas en desarrollo y tomar las decisiones de diseo adecuadas. Los rastreos de embotellamientos. ejecucin de instrucciones (trace) pueden revelar

Un rastreo de ejecucin de mdulos puede mostrar que se est ejecutando un pequeo subconjunto de mdulos durante gran parte del tiempo.

Embotellamientos y Saturacin
Los recursos administrados por los S. O. se acoplan e interactan de maneras complejas para afectar al total de la operacin del sistema. 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.

Un embotellamiento tiende a producirse en un recurso cuando el trfico de trabajos o procesos de ese recurso comienza a alcanzar su capacidad lmite:

El recurso se encuentra saturado.

Rendimiento

Los procesos que compiten por el recurso comienzan a interferirse unos a otros.

Para detectar los embotellamientos se debe controlar cada cola de peticiones de los recursos; cuando una cola crece rpidamente significa que la tasa de llegadas de peticiones debe superar a su tasa de servicio. Los embotellamientos pueden eliminarse:

Aumentando la capacidad de los recursos. Aadiendo ms recursos de se tipo en se punto del sistema.

Ciclos de Retroalimentacin
El rendimiento de un S. O. puede ser sensible al estado actual del sistema. Un ciclo de retroalimentacin es una situacin en la cual la informacin del estado actual del sistema se pone a disposicin de las peticiones entrantes. La ruta de las peticiones puede modificarse, si la retroalimentacin indica que puede haber dificultad de darles servicio. Retroalimentacin negativa La tasa de llegadas de nuevas peticiones puede decrecer como resultado de la informacin que se est retroalimentando. Contribuye a la estabilidad de los sistemas de colas:

Impide que las colas crezcan indefinidamente. Hace que la longitud de las colas se mantenga cerca de sus valores medios. Retroalimentacin positiva

La informacin retroalimentada provoca un incremento en vez de un decremento de algn parmetro. Se deben evitar situaciones similares a la siguiente:

El S. O. detecta capacidad disponible de cpu. El S. O. informa al planificador de trabajos que admita ms trabajos en la mezcla de multiprogramacin: o Con esto se incrementara el uso de cpu. Al incrementarse la mezcla de multiprogramacin: o Decrece la cantidad de memoria que se puede asignar a cada trabajo.

Rendimiento
o o

El nmero de fallos de pgina puede incrementarse. La utilizacin de cpu puede decrecer.

Puede producir inestabilidades:


Debe disearse con mucha prudencia. Se deben controlar los efectos de cada cambio incremental para ver si resulta una mejora anticipada. Si un cambio incremental deteriora el rendimiento se podra estar operando en un rango inestable.