Wie wirkt sich eine Abweichung in der Ausführungszeit der Aufgabe auf die Makespan aus?

16

wir haben eine große Auflistung von Tasks und eine Auflistung von identischen (in Bezug auf die Leistung) Prozessoren , die vollständig in ausgeführt werden parallel. Für interessante Szenarien können wir annehmen . Jedes benötigt einige Zeit / Zyklen, um abgeschlossen zu werden, sobald es einem Prozessor zugewiesen wurde. Sobald es zugewiesen wurde, kann es erst nach Abschluss erneut zugewiesen werden (Prozessoren erledigen eventuell zugewiesene Aufgaben). Nehmen wir an, dass jedes eine Zeit / Zyklenτ1,τ2,...,τnρ1,ρ2,...,ρmmnτiρjτi P ( X i = 1 ) = P ( X i = 5 ) = 1 / 2 X i μ i = 3 σXi, nicht im Voraus bekannt, aus einer diskreten Zufallsverteilung entnommen. Für diese Frage können wir sogar eine einfache Verteilung annehmen: und alle sind paarweise unabhängig. Deshalb ist und .P(Xi=1)=P(Xi=5)=1/2Xiμi=3σ2=4

Nehmen wir an, dass statisch zum Zeitpunkt / Zyklus 0 alle Aufgaben so gleichmäßig wie möglich auf alle Prozessoren verteilt werden, und zwar gleichmäßig nach dem Zufallsprinzip. jedem prozessor sind also zugeordnet (wir können für die der genauso gut annehmen ). Wir nennen die Produktionsspanne der Zeit / Zyklus , bei dem der letzte Prozessor ihre zugewiesene Arbeit zu beenden, die Arbeit beendet zugewiesen wurde. Erste Frage:ρjn/mm|nρ

Was ist als Funktion von , und den die Makespan ? Was ist konkret ? ?mnXiME[M]Var[M]

Zweite Frage:

Angenommen, und alle sind paarweise unabhängig, also ist und . Was ist der Makespan als Funktion von , und diesen neuen ? Interessanter ist, wie verhält es sich mit der Antwort aus dem ersten Teil?P(Xi=2)=P(Xi=4)=1/2Xiμi=3σ2=1mnXi

Einige einfache Gedankenexperimente zeigen, dass die Antwort auf letztere ist, dass die Makespan länger ist. Aber wie kann das quantifiziert werden? Ich werde gerne ein Beispiel posten, wenn dies entweder (a) umstritten oder (b) unklar ist. Abhängig vom Erfolg dieses Tests werde ich unter den gleichen Voraussetzungen eine Folgefrage zu einem dynamischen Zuweisungsschema stellen. Danke im Voraus!

Analyse eines einfachen Falls:m=1

Wenn , werden alle Tasks für denselben Prozessor geplant. Die Makespan ist genau die richtige Zeit, um Aufgaben in einer vollständigen Abfolge zu erledigen. Daher und n M n E [ M ]m=1nMnV a r [ M ]

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

Es scheint möglich zu sein, dieses Ergebnis zur Beantwortung der Frage für . wir müssen einfach einen Ausdruck (oder eine enge Annäherung) für wobei , eine Zufallsvariable mit und . Geht dieser Kurs in die richtige Richtung?m>1Y i = X i nmax(Y1,Y2,...,Ym) μY=nYi=Xinm+1+Xinm+2+...+Xinm+nmσ 2 Y =nμY=nmμXσY2=nmσX2

Patrick87
quelle
Gute Frage. Wenn es heute nur keine Frist gäbe ...
Dave Clarke

Antworten:

8

Da , können wir dies in Form von und anstelle von und . Nehmen wir an, ist die Zeit, die der te Prozessor benötigt, um seine Arbeit abzuschließen.k n n m T i im=k×nknnmTii

Als wächst, ist die Wahrscheinlichkeit , dass = (hat der Prozessor nur zugewiesen für einige Aufgaben) nähert sich , so Makespan Wesen definiert , nähert .T i 5 k T = 5 i 1 m a x ( T i ) E [ M ] 5 knTi5kT=5i1max(Ti)E[M]5k

Für das zweite Szenario ist dies Wenn Sie also die Anzahl der Prozessoren erhöhen, wird die 4–2-Aufteilung besser.4k

Was ist mit - Erhöhung der Anzahl der Aufgaben pro Prozessor? Ein Erhöhen von hat den gegenteiligen Effekt, und es ist weniger wahrscheinlich, dass ein Prozessor eine Reihe unglücklicher Aufgaben hat. Ich gehe jetzt nach Hause, aber darauf komme ich später zurück. Meine "Vermutung" ist, dass mit zunehmendem der Unterschied in zwischen dem 4-2-Split und dem 5-1-Split verschwindet und für beide gleich wird. Daher würde ich davon ausgehen, dass 4–2 immer besser ist, außer vielleicht für einige Sonderfälle (sehr kleine spezifische Werte von und ), wenn auch das.kkkE [ M ] E [ M ] k nkE[M]E[M]kn

Um es zusammenzufassen:

  • Eine geringere Varianz ist besser, alle anderen sind gleich.
  • Mit zunehmender Anzahl von Prozessoren wird eine geringere Varianz wichtiger.
  • Mit zunehmender Anzahl von Aufgaben pro Prozessor wird eine geringere Varianz weniger wichtig.
svinja
quelle
+1 Hervorragende Intuition, und dies hilft mir auch, mein Denken zu klären. Wenn Sie also die Anzahl der Prozessoren erhöhen, steigt die Makespan-Rate unter der Annahme einer schwachen Skalierung. Wenn Sie die Anzahl der Tasks erhöhen, wird die Makespan-Rate unter der Annahme einer starken Skalierung tendenziell verringert (dies dauert natürlich länger; ich meine, das Verhältnis von Arbeit zu Makespan verbessert sich). Dies sind interessante Beobachtungen, und sie scheinen wahr zu sein;
Patrick87
die erste ist durch die Tatsache gerechtfertigt, dass für festes zu tendiert und erhöht ; Letzteres durch die Tatsache, dass ... also das Die Varianz steigt nicht linear als Funktion von . Ist das mit Ihrem Denken vereinbar (so interpretiere ich, was Sie bisher haben)? 1 k n V a r [ X + X ] = V a r [ X ] + V a r [ X ] = 2 σ 24 σ 2 = 4 V a r [ X ] = V a r [ 21(1P(X=5)k)n1knkVar[X+X]=Var[X]+Var[X]=2σ24σ2=4Var[X]=Var[2X]k
Patrick87
Ich weiß nicht, woher die "Ahnung" kam; es stimmt nicht mit dem Rest der heuristischen Argumentation überein.
András Salamon
2

Ich stelle fest, dass heuristische Argumente bei der Planung von Aufgaben (und damit zusammenhängenden Problemen wie dem Verpacken von Behältern) oft irreführend sind. Dinge können passieren, die nicht intuitiv sind. Für solch einen einfachen Fall lohnt es sich, die Wahrscheinlichkeitstheorie tatsächlich anzuwenden.

Sei mit eine positive ganze Zahl. Angenommen, ist die Zeit, die benötigt wird, um die te Aufgabe zu erfüllen, die dem Prozessor . Dies ist eine Zufallsvariable mit Mittelwert und Varianz . Die erwartete Zeitspanne im ersten Fall ist Die Summen sind alle iid mit dem Mittelwert und der Varianz , unter der Annahme, dass alle iid sind (dies ist stärker als die paarweise Unabhängigkeit).n=kmkTijjiμσ2

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

Um nun die Erwartung eines Maximums zu erhalten, benötigt man entweder mehr Informationen über die Verteilung, oder man muss sich mit verteilungsfreien Grenzen zufrieden geben, wie zum Beispiel:

  • Peter J. Downey, Verteilungsfreie Grenzen für die Erwartung des Maximums bei Planungsanwendungen , Operations Research Letters 9 , 189–201, 1990. doi: 10.1016 / 0167-6377 (90) 90018-Z

die angewendet werden kann, wenn die prozessorbezogenen Summen iid sind. Dies wäre nicht unbedingt der Fall, wenn die zugrunde liegenden Zeiten nur paarweise unabhängig wären. Insbesondere ist nach Satz 1 die erwartete Makespan durch Downey gibt auch eine bestimmte Verteilung an, die diese Grenze erreicht, obwohl sich die Verteilung wie ändert und nicht genau natürlich ist.n

E[M]kμ+σkn12n1.
n

Beachten Sie, dass die Schranke besagt, dass sich die erwartete Makespan mit jedem der Parameter erhöhen kann: die Varianz , die Anzahl der Prozessoren oder die Anzahl der Tasks pro Prozessor . n kσ2nk

Für Ihre zweite Frage scheint das Szenario mit geringer Varianz, das zu einer größeren Makespan führt, ein unwahrscheinliches Ergebnis eines Gedankenexperiments zu sein. Let die Makespan für die erste Verteilung bezeichnen und für die zweite (wobei alle anderen Parameter gleich sind ). Hier bezeichnen und die Summen von Aufgabendauern, die dem Prozessor unter den zwei Verteilungen entsprechen. Für alle ergibt die Unabhängigkeit X=maxi=1mXiY=maxi=1mYiXiYikixkμE [ X ] E [ Y ]

Pr[Xx]=i=1mPr[Xix]i=1mPr[Yix]=Pr[Yx].
Da der größte Teil der Masse der Wahrscheinlichkeitsverteilung des Maximums über ihrem Mittelwert liegt, ist tendenziell größer als . Dies ist keine vollständig strenge Antwort, aber der zweite Fall scheint kurz gesagt vorzuziehen.E[X]E[Y]
András Salamon
quelle