¿Cómo afecta la variación en el tiempo de finalización de la tarea a makepan?

16

Digamos que tenemos una gran colección de tareas y una colección de procesadores idénticos (en términos de rendimiento) que operan completamente en paralelo. Para escenarios de interés, podemos suponer . Cada tarda una cierta cantidad de tiempo / ciclos en completarse una vez que se asigna a un procesador , y una vez que se asigna, no se puede reasignar hasta que se complete (los procesadores siempre eventualmente completan las tareas asignadas). Supongamos que cada \ tau_i toma una cantidad de tiempo / ciclos X_iτ1,τ2,...,τnρ1,ρ2,...,ρmmnτiρjτiXi, no conocido de antemano, tomado de una distribución aleatoria discreta. Para esta pregunta, incluso podemos suponer una distribución simple: P(Xi=1)=P(Xi=5)=1/2 , y todos los Xi son independientes en pares. Por lo tanto, μi=3 y σ2=4 .

Suponga que, estáticamente, en el tiempo / ciclo 0, todas las tareas se asignan de la manera más uniforme posible a todos los procesadores, de manera uniforme al azar; entonces a cada procesador ρj se le asignan n/m tareas (también podemos asumir m|n para los propósitos de la pregunta). Llamamos al makepan el tiempo / ciclo en el que el último procesador ρ para finalizar su trabajo asignado, finaliza el trabajo asignado. Primera pregunta:

En función de m , n y Xi 's, ¿cuál es el makepan M ? Específicamente, ¿qué es E[M] ? Var[M] ?

Segunda pregunta:

Suponga que P(Xi=2)=P(Xi=4)=1/2 , y todos los Xi son independientes en pares, entonces μi=3 y σ2=1 . En función de m , n , y estas nuevas Xi 's, ¿cuál es el makepan? Más interesante, ¿cómo se compara con la respuesta de la primera parte?

Algunos experimentos mentales simples demuestran que la respuesta a esto último es que el makepan es más largo. Pero, ¿cómo se puede cuantificar esto? Estaré encantado de publicar un ejemplo si esto es (a) controvertido o (b) poco claro. Dependiendo del éxito con este, publicaré una pregunta de seguimiento sobre un esquema de asignación dinámica bajo estos mismos supuestos. ¡Gracias por adelantado!

Análisis de un caso fácil: m=1

Si m=1 , todas las n tareas están programadas para el mismo procesador. El makepan M es solo el momento para completar n tareas de manera secuencial completa. Por lo tanto,

E[M]=E[X1+X2+...+Xn]=E[X1]+E[X2]+...+E[Xn]=μ+μ+...+μ=nμ
y
Var[M]=Var[X1+X2+...+Xn]=Var[X1]+Var[X2]+...+Var[Xn]=σ2+σ2+...+σ2=nσ2

Parece que podría ser posible usar este resultado para responder la pregunta para ; simplemente necesitamos encontrar una expresión (o aproximación cercana) para donde , una variable aleatoria con y . ¿Se dirige en la dirección correcta?max ( Y 1 , Y 2 , . . . , Y m ) Y i = X i nm>1max(Y1,Y2,...,Ym) μY=nYi=Xinm+1+Xinm+2+...+Xinm+nmσ 2 Y =nμY=nmμXσY2=nmσX2

Patrick87
fuente
Buena pregunta. Si tan solo no hubiera una fecha límite hoy ...
Dave Clarke

Respuestas:

8

Como , podemos ver esto en términos de y lugar de y . Digamos que es el tiempo que le toma al procesador -ésimo terminar su trabajo.m=k×nknnmTii

A medida que crece , la probabilidad de que = (al procesador se le asignaron solo tareas ) para algunos acerca a , por lo que makepan se define como , acerca a .nTi5kT=5i1max(Ti)E[M]5k

Para el segundo escenario, esto es por lo que aumentar el número de procesadores mejora la división 4–2.4k

¿Qué pasa con : aumentar el número de tareas por procesador? El aumento de tiene el efecto contrario, hace que sea menos probable que tenga un procesador con un conjunto de tareas desafortunadas. Me voy a casa ahora, pero volveré sobre esto más tarde. Mi "presentimiento" es que a medida que crece, la diferencia en entre la división 4–2 y la división 5–1 desaparece, vuelve igual para ambos. Por lo tanto, supongo que 4–2 siempre es mejor, excepto tal vez para algunos casos especiales (valores específicos muy pequeños de y ), incluso si eso es así.kkkE[M]E[M]kn

Entonces para resumir:

  • Una varianza más baja es mejor, todo lo demás es igual.
  • A medida que crece el número de procesadores, la variación más baja se vuelve más importante.
  • A medida que crece el número de tareas por procesador, una variación menor se vuelve menos importante.
svinja
fuente
+1 Excelente intuición, y esto también ayuda a aclarar mi pensamiento. Por lo tanto, aumentar el recuento de procesadores tiende a aumentar el makepan bajo un supuesto de escalado débil; y el aumento en el recuento de tareas tiende a disminuir el makepan bajo un supuesto de escala fuerte (por supuesto, lleva más tiempo; quiero decir, la relación trabajo / makepan mejora). Estas son observaciones interesantes, y parecen ciertas;
Patrick87
el primero se justifica por el hecho de que tiende a para fijo y aumenta ; el último por el hecho de que ... entonces el la varianza no aumenta linealmente en función de . ¿Es eso compatible con tu pensamiento (así es como estoy interpretando lo que tienes hasta ahora)? 1(1P(X=5)k)n1knVar[X+X]=Var[X]+Var[X]=2σ24σ2=4Var[X]=Var[2X]k
Patrick87
No sé de dónde vino la "corazonada"; no es consistente con el resto del razonamiento heurístico.
András Salamon
2

Encuentro que los argumentos heurísticos a menudo son bastante engañosos cuando se considera la programación de tareas (y problemas estrechamente relacionados como el embalaje de contenedores). Pueden suceder cosas que son contra-intuitivas. Para un caso tan simple, vale la pena hacer la teoría de la probabilidad.

Sea con un número entero positivo. Suponga que es el tiempo necesario para completar la -ésima tarea dada al procesador . Esta es una variable aleatoria con media y varianza . El makepan esperado en el primer caso es Las sumas son todas iid con media y varianza , suponiendo que son todas iid (esto es más fuerte que la independencia por pares).n=kmkTijjiμσ2

E[M]=E[max{j=1kTiji=1,2,,m}].
kμkσ2Tij

Ahora, para obtener la expectativa de un máximo, uno necesita más información sobre la distribución o debe conformarse con límites libres de distribución, tales como:

  • Peter J. Downey, límites libres de distribución en la expectativa del máximo con las aplicaciones de programación , Operation Research Letters 9 , 189-201, 1990. doi: 10.1016 / 0167-6377 (90) 90018-Z

que se puede aplicar si las sumas del procesador son iid. Este no sería necesariamente el caso si los tiempos subyacentes fueran solo independientes por pares. En particular, por el Teorema 1, el makepan esperado está limitado por Downey también proporciona una distribución particular que logra este límite, aunque la distribución cambia como , y no es exactamente natural.

E[M]kμ+σkn12n1.
n

Tenga en cuenta que el límite dice que el makepan esperado puede aumentar a medida que aumenta cualquiera de los parámetros: la varianza , el número de procesadores , o el número de tareas por procesador .σ2nk

Para su segunda pregunta, el escenario de baja varianza que resulta en un makepan más grande parece ser un resultado improbable de un experimento mental. Supongamos que denota el makepan para la primera distribución, y para la segunda (con todos los demás parámetros iguales). Aquí e denotan las sumas de duraciones de tareas correspondientes al procesador bajo las dos distribuciones. Para todos , la independencia produce X=maxi=1mXiY=maxi=1mYiXiYikixkμ

Pr[Xx]=i=1mPr[Xix]i=1mPr[Yix]=Pr[Yx].
Como la mayor parte de la masa de la distribución de probabilidad del máximo estará por encima de su media, tenderá a ser mayor que . Esta no es una respuesta completamente rigurosa, pero en resumen, el segundo caso parece preferible.E[X]E[Y]
András Salamon
fuente