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 P ( X i = 1 ) = P ( X i = 5 ) = 1 / 2 X i μ i = 3 σ, 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 .
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:
Was ist als Funktion von , und den die Makespan ? Was ist konkret ? ?
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?
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:
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 ]V a r [ M ]
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?Y i = X i n μY=nσ 2 Y =n
quelle
Antworten:
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×n k n n m Ti i
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 kn Ti 5k T=5 i 1 max(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.kk k E [ M ] E [ M ] k nk E[M] E[M] k n
Um es zusammenzufassen:
quelle
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=km k Tij j i μ σ2
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:
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
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σ2 n k
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ängigkeitX=maxmi=1Xi Y=maxmi=1Yi Xi Yi k i x≥kμ E [ X ] E [ Y ]
quelle