Mathematical modeling of the performance of a computer system. Félix Armando Fermín Pérez Universidad Nacional Mayor de San Marcos Facultad de Ingeniería de Sistemas e Informática Lima, Perú fferminp@unmsm.edu.pe intervención humana, que Fox y Patterson (2003) Abstract también han identificado como parte principal del problema, debido al uso de procedimientos ad hoc Generally the management of computer systems is donde la gestión de recursos aún depende manual; autonomic computing by self-management fuertemente del control y administración manual. tries to minimize human intervention using Sobre la computación autonómica, Kephart y autonomic controllers; for this, first the Chess (2003) mencionan que la idea es que un mathematical modeling of the system under study sistema informático funcione igual que el sistema is performed, then is designed a controller that nervioso autonómico humano cuando regula governs the behavior of the system. In this case, nuestra temperatura, respiración, ritmo cardíaco y the determination of the mathematical model of a otros sin que uno se halle siempre consciente de web server is based on a black box model by ello, esto es, promueve la menor intervención system identification, using data collected and humana en la administración de la performance de stored in its own log during operation of the los sistemas informáticos tendiendo hacia la auto- computer system under study. administración de los mismos. Tal auto- administración se caracteriza por las propiedades Keywords: autonomic computing, self- de auto-configuración (self-configuration), auto- management, system identification. curación (self-healing), auto-optimización (self- 1 Introducción optimization) y auto-protección (self-protection). La tecnología influye en cada aspecto de la vida En la visión de la computación autonómica los cotidiana; las aplicaciones informáticas, por administradores humanos simplemente especifican ejemplo, son cada vez más complejas, los objetivos de alto nivel del negocio, los que heterogéneas y dinámicas, pero también la sirven como guía para los procesos autonómicos infraestructura de información, como la Internet subyacentes. Así los administradores humanos se que incorpora grandes cantidades de recursos concentran más fácilmente en definir las políticas informáticos y de comunicación, almacenamiento del negocio, a alto nivel, y se liberan de tratar de datos y redes de sensores, con el riesgo de que permanentemente con los detalles técnicos de bajo se tornen frágiles, inmanejables e inseguras. Así, se nivel, necesarios para alcanzar los objetivos, ya hace necesario contar con administradores de que estas tareas son ahora realizadas por el sistema servicios y de servidores informáticos, autonómico mediante un controlador autonómico experimentados y dedicados, además de en lazo cerrado, que monitorea el sistema herramientas software de monitoreo y supervisión, permanentemente, utiliza los datos recolectados del para asegurar los niveles de calidad de servicio propio sistema en funcionamiento, compara estas pactados (Fermín, 2012). métricas con las propuestas por el administrador humano, y controla la performance del sistema, por Diao et al. (2005) promueven la utilización de la ejemplo, manteniendo el tiempo de respuesta del computación autonómica mediante sistemas de sistema dentro de niveles prefijados. control automático en lazo cerrado, reduciendo la 62 De acuerdo con la teoría de control, el diseño de un estudio, con herramientas de análisis utilizando controlador depende de un buen modelo técnicas de análisis estadísticas, principalmente. matemático. En el caso de un sistema informático, primero debe tenerse un modelo matemático para Entre las métricas de performance inicialmente se luego diseñar un controlador en lazo cerrado o encontraba la velocidad de procesamiento, pero al realimentado, pero sucede que los sistemas agregarse más componentes a la infraestructura informáticos son bastante complicados de modelar informática, surgieron nuevas métricas, siendo las ya que su comportamiento es altamente principales las que proporcionan una idea del estocástico. Según Hellerstein et al (2004) se ha rendimiento o trabajo realizado en un periodo de utilizado la teoría de colas para modelarlos, tiempo, la utilización de un componente, o el tratándolos como redes de colas y de servidores, tiempo en realizar una tarea en particular como por bastante bien pero principalmente en el modelado ejemplo el tiempo de respuesta. Lalanda et al. del comportamiento estacionario y no cuando se (2013) mencionan que las métricas de performance trata de modelar el comportamiento muchas veces más populares son las siguientes: altamente dinámico de la respuesta temporal de un - Número de operaciones en punto flotante por sistema informático en la zona transitoria, donde la segundo (FLOPS), representa una idea del tarea se complica. rendimiento del procesamiento, realiza comparaciones entre máquinas que procesan De manera que en el presente artículo se trata el complejos algoritmos matemáticos con punto modelado matemático de un sistema informático flotante en aplicaciones científicas. mediante la identificación de sistemas, enfoque - Tiempo de respuesta, representa la duración en empírico donde según Lung (1987) deben tiempo que le toma a un sistema llevar a cabo identificarse los parámetros de entrada y salida del una unidad de procesamiento funcional. Se le sistema en estudio, basándose en los datos considera como una medición de la duración recolectados del mismo sistema en en tiempo de la reacción a una entrada funcionamiento, para luego construir un modelo determinada y es utilizada principalmente en paramétrico, como el ARX por ejemplo, con las sistemas interactivos. La sensibilidad es técnicas estadísticas de autoregresión. La sección 2 también una métrica utilizada especialmente en describe alguna teoría básica sobre las métricas la medición de sistemas en tiempo real, para el monitoreo de la performance de un sistema consiste en el tiempo transcurrido entre el informático. En la sección 3 se trata el modelado inicio y fin de la ejecución de una tarea o hilo. matemático, y en la sección 4 se describe el - Latencia, medida del retardo experimentado en experimento realizado; finalmente en la sección 5 un sistema, generalmente se le utiliza en la se describen las conclusiones y trabajos futuros. descripción de los elementos de comunicación de datos, para tener una idea de la performance 2 Monitoreo de la performance. de la red. Toma en cuenta no solo el tiempo de procesamiento de la CPU sino también los En la computación autonómica los datos obtenidos retardos de las colas durante el transporte de del monitoreo de la performance del sistema en un paquete de datos, por ejemplo. estudio contribuye fundamentalmente en la - Utilización y carga, métricas entrelazadas y representación del estado o del comportamiento del utilizadas para comprender la función de sistema, esto es, en el modelo matemático del administración de recursos y proporcionan una mismo. Según Lalanda et al. (2013), conocer el medida de cuan bien se están utilizando los estado del sistema desde las perspectivas componentes de un sistema y se describe como funcionales y no funcionales es vital para llevar a un porcentaje de utilidad. La carga mide el cabo las operaciones necesarias que permitan trabajo realizado por el sistema y usualmente lograr los objetivos en el nivel deseado y el es representado como una carga promedio en monitoreo de la performance permite saber cuan un periodo de tiempo. bien lo está logrando. Generalmente los datos de la performance se consiguen vía el log del sistema en Existen muchas otras métricas de performance: - número de transacciones por unidad de costo. 63 - función de confiabilidad, tiempo en el que un sistema ha estado funcionando sin fallar. - función de disponibilidad, indica que el sistema está listo para ser utilizado cuando sea necesario. - tamaño o peso del sistema, indica la portabilidad. - performance por vatio, representa la tasa de cómputo por vatio consumido. - calor generado por los componentes ya que en sistemas grandes es costoso un sistema de refrigeración. Todas ellas entre otras más permiten conocer mejor el estado no funcional de un sistema o proporcionar un medio para detectar un evento que ha ocurrido y ha modificado el comportamiento no funcional. Así, en el presente caso se ha elegido inicialmente como métrica al tiempo de respuesta, ya que el sistema informático en estudio es un Figura N° 1. Modelado matemático basado en la servidor web, por esencia de comportamiento teoría de control. (Adaptado de Hellerstein, 2004). interactivo, de manera que lo que se mide es la duración de la reacción a una entrada determinada. En contraste, según Ljung (1987) la identificación de sistemas es un enfoque empírico donde debe identificarse los parámetros de entrada y salida del 3 Modelado matemático. sistema en estudio, para luego construir un modelo paramétrico, como el ARX por ejemplo, mediante En la computación autonómica, basado en la teoría técnicas estadísticas de autoregresión. Este modelo de control realimentado, para diseñar un o ecuación paramétrica relaciona los parámetros de controlador autonómico primero debe hallarse el entrada y de salida del sistema de acuerdo a la modelo matemático del sistema en estudio, tal siguiente ecuación: como se muestra en la Figura N° 1. El modelo matemático de un servidor informático se puede y(k+1) = Ay(k) + Bu(k) (1) hallar mediante dos enfoques: uno basado en las leyes básicas, y otro en un enfoque empírico donde y(k) : variable de salida denominado identificación de sistemas. Parekh et u(k) : variable de entrada al. (2002) indican que en trabajos previos se ha A, B : parámetros de autoregresión tratado de utilizar principios, axiomas, postulados, k : muestra k-ésima. leyes o teorías básicas para determinar el modelo matemático de sistemas informáticos, pero sin Este enfoque empírico trata al sistema en estudio éxito ya que es difícil construir un modelo debido a como una caja negra, de manera que no afecta la su naturaleza compleja y estocástica; además es complejidad del sistema o la falta de conocimiento necesario tener un conocimiento detallado del experto, incluso cuando se actualicen las versiones sistema en estudio, más aún, cuando cada cierto del software bastaría con estimar nuevamente los tiempo se va actualizando las versiones del parámetros del modelo. Así, para un servidor web software, y finalmente que en este enfoque no se Apache, la ecuación paramétrica relaciona el considera la validación del modelo. parámetro entrada, Max Clients (MC), un parámetro de configuración del servidor web Apache que determina el número máximo de conexiones simultáneas de clientes que pueden ser servidos; y el parámetro de salida Tiempo de respuesta (TR), que indica lo rápido que se 64 responde a las solicitudes de servicio de los recoge los tiempos de inicio y fin de cada http que clientes del servidor, ver Figura N° 2. ingresa al servidor web, datos que se almacenan en el log del mismo servidor, y luego se realiza el cálculo del tiempo de respuesta de cada http completado en una unidad de tiempo y el tiempo de respuesta promedio del servidor. El servidor web por sí mismo no hace nada, por ello, la computadora personal PC2 contiene un generador de carga de trabajo, que simula la actividad de los Figura N° 2. Entrada y salida del sistema a usuarios que desean acceder al servidor web; en modelar. (Elaboración propia). este caso se utilizó el JMeter una aplicación generadora de carga de trabajo y que forma parte En (Hellerstein et al, 2004) se propone realizar la del proyecto Apache. identificación de sistemas informáticos, como los servidores web, de la siguiente manera: La operación del servidor web, no solo depende de 1.- Especificar el alcance de lo que se va a modelar la actividad de los usuarios, sino también de la en base a las entradas y salidas consideradas. señal de entrada MaxClients (MC), que toma 2.- Diseñar experimentos y recopilar datos que forma de una sinusoide discreta variable que excita sean suficientes para estimar los parámetros de la al servidor web junto con las solicitudes http del ecuación diferencia lineal del orden deseado. generador de carga de trabajo (PC2). De manera 3.- Estimar los parámetros del modelo utilizando que con la actividad del servidor web almacenada las técnicas de mínimos cuadrados. en su log, un sensor software calcula los valores de 4.- Evaluar la calidad de ajuste del modelo y si la la señal de salida Tiempo de Respuesta (TR), calidad del modelo debe mejorarse, entonces debe mostrados en la Figura N° 4. revisarse uno o más de los pasos anteriores. 4 Experimento. La arquitectura del experimento implementado, se muestra en la Figura Nº 3. Figura N° 4. Señal de entrada MaxClients MC y señal de salida Tiempo de respuesta TR. Con los datos de MC y TR obtenidos se estiman los parámetros de regresión A y B de la ecuación paramétrica ARX, haciendo uso de las técnicas de Figura N° 3. Arquitectura para la identificación del mínimos cuadrados, implementadas en el ToolBox modelo de un servidor web (Elaboración propia). Identificación de Sistemas del Matlab, logrando la siguiente ecuación paramétrica de primer orden: La computadora personal PC1 es el servidor web Apache, asimismo contiene el sensor software que TR(k+1) = 0.06545TR(k) + 4.984MC(k+1) 65 Se puede observar que el Tiempo de respuesta ARX, aunque más adelante se planteará el diseño actual depende del Tiempo de respuesta anterior y de controladores autonómicos no lineales para del parámetro de entrada MaxClients. El modelo sistemas informáticos en general, ya que el hallado es evaluado utilizando la métrica r2, comportamiento temporal no lineal, hace adecuada calidad de ajuste, del ToolBox utilizado, que indica la utilización de técnicas de inteligencia artificial el porcentaje de variación respecto a la señal como la lógica difusa y las redes neuronales. original. En el caso de estudio, el modelo hallado tiene una calidad de ajuste del 87%, lo que se puede considerar como un modelo aceptable. En la 6 Referencias bibliográficas. Figura N° 5 puede observarse la gran similitud Diao, Y.; Hellerstein, J.; Parekh, S.; Griffith, R.; entre la señal de salida medida y la señal de salida Kaiser, G.; Phung, D. (2005) A Control Theory estimada. Foundation for Self-Managing Computing Systems, IEEE Journal on Selected Areas in Communications, Vol. 23, Issue 12, pp. 2213 – 2222. IEEE. DOI: 10.1109/JSAC.2005.857206. Fermín F. (2012). La Teoría de Control y la Gestión Autónoma de Servidores Web. Memorias del IV Congreso Internacional de Computación y Telecomunicaciones. ISBN 978-612-4050-57-2. Fox, A.; Patterson, D. (2003). Self-repairing Figura N° 5. TR medida y TR estimada. computers, Scientific American, Jun2003, Vol. 288 Issue 6, pp. 54-61. 5 Conclusiones. Hellerstein, J.; Diao, Y.; Parekh, S.; Tilbury, D. (2004). Feedback Control of Computing Systems. La identificación del comportamiento de un Hoboken, New Jersey: John Wiley & Sons, Inc. sistema informático tratado como una caja negra es ISBN 0-471-26637-X posible, para ello debe simularse el funcionamiento del mismo con hardware y herramientas software Kephart, J.; Chess, D. (2003). The vision of como el Jmeter y Matlab, por ejemplo. autonomic computing. Computer, Jan2003, Vol. 36, Issue 1, pp. 41-50. IEEE. DOI: El modelo matemático determinado en base a los 10.1109/MC.2003.1160055 datos recopilados del log del sistema en estudio se aproxima bastante al modelo real, en este caso se Lalanda, P.; McCann, J.; Diaconescu, A. (2013). obtuvo un 87% de calidad de ajuste. Autonomic Computing. Principles, Design and Implementation. London: Springer-Verlag. ISBN El sensor software implementado ha permitido 978-1-4471-5006-0 calcular el tiempo de respuesta en base a los datos almacenados en el log del mismo servidor. Ljung L. (1987). System Identification: Theory for the User. Englewood Cliffs, New Jersey: Prentice Hall. De los datos tomados se observa que los sistemas informáticos poseen un comportamiento cercano al Parekh, S.; Gandhi, N.; Hellerstein, J.; Tilbury, D.; lineal solo en tramos por lo que se sugiere Jayram, T.; Bigus, J. (2002). Using control theory experimentar con modelos matemáticos no lineales to achieve service level objectives in performance para comparar la calidad de ajuste de ambos. management. Real-Time Systems. Jul2002, Vol. 23, Issue 1/2, pp. 127-141. Norwell, Como trabajos futuros se plantea diseñar un Massachusetts: Kluwer Academic Publishers. DOI: controlador autonómico basado en el modelo lineal 10.1023/A:1015350520175. 66