Los estudios teóricos de calendarización basada en lista datan desde hace más de 40 años. A pesar de todo este tiempo, los resultados aún siguen vigentes. La calendarización de tareas utilizando múltiples procesadores paralelos es compleja. Se sabe que al cambiar algunos parámetros como el orden de la lista de tareas, disminuir el tiempo de ejecución de las tareas, relajar las relaciones de precedencia de las tareas o cambiar el número de procesadores del sistema, se presentan ciertas anomalías como el aumento de la longitud del calendario (Graham, 1969). Uno de los resultados más importantes es la cota de competitividad para tareas secuenciales y calendarización determinística cuando todas las tareas están disponibles desde el inicio de la calendarización (Graham, 1966):
2 1 (1) donde es la longitud del calendario generado por un algoritmo basado en lista, es la longitud del calendario óptimo y es el número de procesadores paralelos. Esta cota de desempeño también se aplica para tareas paralelas y calendarización determinística (Garey y Graham, 1975).
Es más difícil establecer una cota de desempeño cuando no todas las tareas están disponibles desde el inicio de la calendarización y, además, no se conocen los tiempos de ejecución de las tareas. A pesar de eso, algunos estudios recientes muestran que la cota anterior también se aplica para este tipo de problemas (Naroska y Schwiegelshohn, 2002).
Pero la calendarización en Grid es inherentemente más compleja al incluir múltiples máquinas paralelas. Este problema es similar al de Partición que es NP-difícil1 (Garey y Johnson, 1979) de acuerdo a la teoría de la complejidad computacional. La cota de competitividad para algoritmos de calendarización basados en lista no se puede aplicar a un Grid computacional. Incluso, los algoritmos de calendarización basados en lista no pueden garantizar una cota de competitividad constante (Schwiegelshohn et al., 2008). Esto
se debe a la complejidad de balancear la carga de trabajo, provocando que tareas paralelas grandes esperen su ejecución. No existe un algoritmo de tiempo polinomial que siempre
produzca calendarios con 2 para 2 a menos que
(Schwiegelshohn et al., 2008).
1 NP-difícil, en teoría de la complejidad computacional, es una clase de problemas que son al menos tan
difíciles como los problemas más difíciles de la clase NP.
2 Notación corta de tres campos utilizada para describir un problema de calendarización específico (Graham et
al., 1979). El primer campo describe las características del sistema, se refiere a la calendarización en Grid. El segundo campo describe las características de las tareas, indica que el tamaño de cada tarea es conocido. El tercer campo describe el criterio de optimización, denota la longitud del calendario (medido en unidades de tiempo).
El algoritmo MOLBA (Multi-Organization Load Balancing Algorithm) (Pascual et
al., 2007) también tiene una cota de desempeño constante; 3 si la última tarea calendarizada es pequeña, 4 para el caso general. El modelo utilizado es más restringido, múltiples máquinas paralelas iguales. En un ambiente Grid esta suposición no es realista; por definición un Grid es una infraestructura distribuida heterogénea (Foster y Kesselman, 1998).
Se han considerado variantes de calendarización en línea para máquinas paralelas, donde parte de la información de trabajos futuros se conoce de antemano. El problema LL (Longest Last) es una versión semi en línea donde se sabe que la última tarea es la más larga, en otras palabras, la última tarea en la lista es la que tiene el tiempo de procesamiento mayor. Algunos algoritmos para este problema alcanzan cocientes de competitividad de √2 y para máquinas con 2 y 3 procesadores respectivamente y tareas secuenciales (Zhang y Ye, 2002). Sin embargo, a pesar de que estos algoritmos son tan eficientes, las suposiciones del modelo son tan restringidas que únicamente se pueden aplicar para casos muy específicos. Por tal razón resultan inadecuados para ambientes dinámicos y heterogéneos como los que presenta el Grid computacional.
Existen resultados experimentales para Grid jerárquico de dos niveles, sin embargo, algunos utilizan cargas de trabajo sintéticas, otros utilizan modelos restringidos o se enfocan en diferentes puntos del problema. En un trabajo previo (Ramírez et al., 2007) se presenta una comparación de varias estrategias de calendarización, Min_CT (asigna las tareas a la máquina que ofrece el menor tiempo de terminación) y Min_ST (asigna las tareas a la máquina que ofrece el mejor tiempo de inicio) son las estrategias que presentan los mejores resultados. El estudio se enfoca primordialmente en estimar los tiempos de ejecución basándose en los tiempos solicitados por el usuario, de esta manera pretenden obtener mejores resultados. Un punto importante es el hecho que no se presenta un análisis de la carga de trabajo, por lo que los resultados no están bien sustentados, además la calendarización es determinística. Caso similar se presenta en (Galaviz et al., 2006) donde
se realizan evaluaciones con más algoritmos de calendarización local, también para calendarización determinística. Y estudios teóricos de la estrategia Min_CT muestran cocientes de competitividad constantes al combinarlo con ciertos algoritmos de calendarización local como lo son BL (Bottom Left) y BLD (Bottom Left Decreasing) (Zhuk et al., 2004).
Uno de los pocos estudios que incluyen un análisis teórico y experimental de estrategias de calendarización analiza dos de ellas, FCFS (First Come First Served) y LS (List Scheduling), con diferentes ordenamientos de la cola de tareas. Presentan una cota de desempeño de para el algoritmo LS, donde depende de un modelo de costos
de comunicación, es el tamaño mínimo de las tareas y el total de procesadores en el Grid. Aunque este análisis también se enfoca en una calendarización determinística y los resultados experimentales utilizan configuraciones de Grid y cargas de trabajo sintéticas (Li, 2005).
Se han obtenido más resultados para calendarización determinística que para calendarización en línea. Refiérase al trabajo de Sgall (1998) y al de Iovanella (2002) para una revisión más completa de varios resultados y paradigmas en línea.