3 research outputs found
Planificaci贸n Tiempo Real en multiprocesadores: reducci贸n de cambios de contexto y migraciones en AlECS
El dise帽o de algoritmos de planificaci贸n tiempo real sobre multiprocesadores es un campo en el que la industria tiene inter茅s porque permiten reducir el peso, las dimensiones y el consumo de los sistemas. Uno de los problemas que introducen estos algoritmos es que o bien desperdician tiempo de procesador, o bien introducen sobrecostes al intentar aprovecharlo al m谩ximo, al incrementar las migraciones y cambios de contexto de las tareas.Este trabajo presenta el algoritmo de planificaci贸n CAlECS que trabaja con utilizaci贸n m谩xima y genera un n煤mero de cambios de contextos y migraciones menor que RUN, algoritmo de referencia en este aspecto. La principal novedad en su implementaci贸n es el uso de una t茅cnica de clustering (agrupamiento) capaz de obtener planificaciones con utilizaci贸n m谩xima, a la vez que permite limitar los procesadores a los que puede migrar cada tarea.Adem谩s, genera de forma off-line un ejecutivo c铆clico, situ谩ndose en la l铆nea de los est谩ndares de la industria de automoci贸n y aeroespacial.Tambi茅n se ha actualizado el entorno de simulaci贸n Tertimuss, usado como base experimental durante el trabajo. Se ha renovado completamente su arquitectura y modo de simulaci贸n, pasando de simular ciclos de procesador a simular eventos del sistema. Esto reduce de horas a minutos el tiempo de c贸mputo cuando se simulan grandes vol煤menes de experimentos. Tertimuss se ha ampliado con herramientas que permiten el an谩lisis autom谩tico de planificaciones obteniendo diferentes m茅tricas (ej. n煤mero de cambios de contexto). Se han a帽adido nuevos m茅todos de representaci贸n de planificaciones, y nuevos algoritmos de planificaci贸n y generaci贸n de tareas. En la pr谩ctica, Tertimuss es m谩s eficiente al usarse como una biblioteca, por lo que se ha modificado sustancialmente la interfaz de programaci贸n que ofrece para facilitar su uso en esa forma.Por 煤ltimo, se ha planteado un flujo de trabajo que facilita la aplicaci贸n de algoritmos de planificado ejecutados off-line sobre sistemas reales. Este es un flujo de trabajo iterativo, que busca en cada iteraci贸n ajustar el m谩ximo tiempo de ejecuci贸n de las tareas teniendo en cuenta la planificaci贸n de las mismas. Esto permite limitar los sobrecostes que se contabilizan en este. Adem谩s, se ha analizado los costes en los que incurre un cambio de contexto y una migraci贸n en una placa de desarrollo.<br /
Entorno de simulaci贸n de planificadores tiempo real para multiprocesadores con restricciones t茅rmicas y de energ铆a
El dise帽o de algoritmos de planificaci贸n tiempo real sobre multiprocesadores es un campo en el que la industria tiene inter茅s, pero es m谩s complejo que el dise帽o tradicional sobre monoprocesadores. Esa complejidad aumenta a煤n m谩s si a las restricciones temporales hay que a帽adir que una mala planificaci贸n puede generar puntos calientes en el procesador. Las herramientas de simulaci贸n ayudan a evaluar la correcci贸n de las planificaciones cuando las pruebas o condiciones te贸ricas de planificabilidad no aseguran la existencia o no de una planificaci贸n viable, por ser generalmente condiciones suficientes pero no necesarias. El cumplimiento de restricciones t茅rmicas o de energ铆a a煤n hace m谩s necesarios estos simuladores.Este trabajo presenta un simulador de planificadores de tiempo real sensibles a temperatura y energ铆a para multiprocesadores. Ha sido creado en Python haciendo uso de componentes sin restricciones de licencia, y usa Redes de Petri Continuas Temporizadas (TCPN) para simular el sistema. El entorno se basa en uno previo, al cual va a substituir, creado en Matlab, con problemas que limitan su desarrollo, y con un alto coste computacional y de ocupaci贸n de memoria.En el nuevo entorno se mitigan los problemas del anterior logrando un speed-up del x9.1 y una reducci贸n de la ocupaci贸n de memoria de x5.4. Estas mejoras se logran modificando la TCPN que simula el sistema, optimizando la resoluci贸n de la ecuaci贸n de estado de la misma y cambiando las estructuras de datos en las que se almacena la misma.La arquitectura del nuevo entorno es completamente diferente de la anterior, y es ahora modular y escalable. Desacopla el simulador de TCPNs de la definici贸n del modelo de sistema, posibilitando cambiar cualquiera de los dos de forma independiente. Adem谩s se realiza lo propio entre la definici贸n de planificadores y el conjunto del simulador, lo que permite definirlos mediante una interfaz simple sin conocer el funcionamiento del resto del entorno.Por otro lado, se a帽aden caracter铆sticas nuevas como la posibilidad de tratar tareas aperi贸dicas, la inclusi贸n de planificadores con intervalos de planificaci贸n variables y la inclusi贸n de frecuencias variables en el procesador. Se ha a帽adido tambi茅n un nuevo modelo de interacci贸n con el usuario mediante l铆nea de comandos que permite la simulaci贸n por lotes, as铆 como nuevos planificadores.Utilizando el nuevo entorno se realiza una comparaci贸n entre los cuatro planificadores implementados, donde se muestran y analiza su viabilidad y comportamiento en varios escenarios, incluyendo el cumplimiento de restricciones t茅rmicas.<br /
Maximizing Utilization and Minimizing Migration in Thermal-Aware Energy-Efficient Real-Time Multiprocessor Scheduling
This work proposes CAlECs, a clustered scheduling system for MPSoCs subject to thermal and energy constraints. It calculates off-line a cyclic executive honoring temporal and thermal constraints, for a hard real-time (HRT) task set at minimum frequency to reduce consumed energy, minimizing context switches and migrations. It also provides an on-line controller able to manage system and task parametric variations and soft real-time (SRT) tasks, always meeting the HRT task set constraints and the system thermal bound. CAlECS maximizes CPU utilization to help avoid overprovisioning contributing to a low SWaP factor. Its modular design allows the utilization of different modeling and scheduling approaches, and makes the off-line and on-line components independent from each other to better suit the requirements of a specific system. We experimentally show that the cyclic executive provided by CAlECS for HRT task sets outperforms RUN, a reference off-line algorithm in terms of optimal number of context switches