작업 완료 시간의 차이가 makepan에 어떤 영향을 줍니까?


16

하자 우리가 작업의 큰 컬렉션을 가지고 있다고 및 프로세서 (성능의 관점에서) 동일한 모음 ρ (1) , ρ (2) , . . . , ρ m 완전히 병렬로 작동합니다. 관심있는 시나리오에서는 m n 이라고 가정 할 수 있습니다 . 각 τ i 는 일단 프로세서에 할당되면 완료하는 데 어느 정도의 시간 / 사이클이 소요됩니다τ1,τ2,...,τnρ1,ρ2,...,ρmmnτiρj할당 된 후에는 완료 될 때까지 다시 할당 할 수 없습니다 (프로세서는 항상 할당 된 작업을 완료합니다). 의 각 가정하자 시간의 양을 취 / 사이클 은 X 서버 내가 아니라, 사전에 알려진 몇 가지 이산 임의 분포에서 가져온. 이 질문에 대해, 우리는 심지어 간단한 분포를 가정 할 수있다 P ( X I = 1 ) =이 P ( X = 5 ) = 1 / 2 , 모든 X i가 있는 페어 독립을. 따라서 μ i = 3στiXiP(Xi=1)=P(Xi=5)=1/2Xiμi=3σ2=4 .

정적으로 시간 / 사이클 0에서 모든 작업이 모든 프로세서에 균일하게 무작위로 균일하게 할당된다고 가정합니다. 각각의 프로세서 할당 된 N / m의 (우리는 단지뿐만 아니라 가정 할 수있는 작업을 m를 | n은 질문의 목적을 위해). 할당 된 작업을 완료하고 할당 된 작업을 완료하기 위해 마지막 프로세서 ρ 의 시간 / 사이클을 makepan이라고합니다 . 첫 번째 질문 :ρjn/mm|nρ

, nX i 의 함수로 makepan M은 무엇입니까? 구체적으로, E [ M ]은 무엇입니까? V a r [ M ] ?mnXiME[M]Var[M]

두 번째 질문 :

가정 , 모든 X 그래서 페어 무관 μ = 3σ 2 = 1 . m , n 및이 새로운 X i 의 함수로서 makepan은 무엇입니까? 더 흥미롭게도 첫 번째 부분의 답변과 어떻게 비교됩니까?P(Xi=2)=P(Xi=4)=1/2Xiμi=3σ2=1mnXi

간단한 생각 실험에서 후자의 대답은 makepan이 더 길다는 것입니다. 그러나 이것을 어떻게 정량화 할 수 있습니까? 이것이 (a) 논쟁의 여지가 있거나 (b) 불분명 한 경우 사례를 게시하게되어 기쁩니다. 이것의 성공에 따라, 동일한 가정 하에서 동적 할당 체계에 대한 후속 질문을 게시 할 것입니다. 미리 감사드립니다!

쉬운 사례 분석 : m=1

경우에 , 모든 N 개의 작업은 동일한 프로세서 예정이다. makespan Mn 개의 작업을 완전한 순차 방식으로 완료하는 시간 입니다. 따라서 E [ M ]m=1nMn V 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

이 결과를 사용하여 대한 질문에 대답하는 것이 가능할 것 같습니다 . 우리는 단순히 대한 식 (또는 근사치) 찾아야 맥스 ( Y 1 , Y 2 , . . . , Y m ) 여기서, Y는 I = X I Nm>1max(Y1,Y2,...,Ym) ,μY=n 인랜덤 변수Yi=Xinm+1+Xinm+2+...+Xinm+nmμY=nmμX and σY2=nmσX2. Is this heading in the right direction?


Nice question. If only there wasn't a deadline today....
Dave Clarke

답변:


8

m=k×nknnmTii-th processor to finish its work.

nTi5kT=5 tasks) for some i approaches 1, so makespan being defined as max(Ti), E[M] approaches 5k.

For the second scenario this is 4k so increasing the number of processors makes the 4–2 split better.

What about k — increasing the number of tasks per processor? Increasing k has the opposite effect, it makes it less likely to have a processor with an unlucky set of tasks. I'm going home now but I'll come back to this later. My "hunch" is that as k grows, the difference in E[M] between the 4–2 split and the 5­­­–1 split disappears, E[M] becomes the same for both. So I would assume that 4–2 is always better except maybe for some special cases (very small specific values of k and n), if even that.

So to summarize:

  • Lower variance is better, all else being equal.
  • As the number of processors grows, lower variance becomes more important.
  • As the number of tasks per processor grows, lower variance becomes less important.

+1 Excellent intuition, and this helps to clarify my thinking as well. So increasing processor counts tends to increase makespan under a weak scaling assumption; and increasing task counts tends to decrease makespan under a strong scaling assumption (of course it takes longer; I mean the work/makespan ratio improves). These are interesting observations, and they seem true;
Patrick87

the first is justified by the fact that 1(1P(X=5)k)n tends to 1 for fixed k and increasing n; the latter by the fact that Var[X+X]=Var[X]+Var[X]=2σ24σ2=4Var[X]=Var[2X]... so the variance doesn't increase linearly as a function of k. Is that compatible with your thinking (that's how I'm interpreting what you have so far)?
Patrick87

I don't know where the "hunch" came from; it is not consistent with the rest of the heuristic reasoning.
András Salamon

2

I find that heuristic arguments are often quite misleading when considering task scheduling (and closely related problems like bin packing). Things can happen that are counter-intuitive. For such a simple case, it is worthwhile actually doing the probability theory.

Let n=km with k a positive integer. Suppose Tij is the time taken to complete the j-th task given to processor i. This is a random variable with mean μ and variance σ2. The expected makespan in the first case is

E[M]=E[max{j=1kTiji=1,2,,m}].
The sums are all iid with mean kμ and variance kσ2, assuming that Tij are all iid (this is stronger than pairwise independence).

Now to obtain the expectation of a maximum, one either needs more information about the distribution, or one has to settle for distribution-free bounds, such as:

  • Peter J. Downey, Distribution-free bounds on the expectation of the maximum with scheduling applications, Operations Research Letters 9, 189–201, 1990. doi:10.1016/0167-6377(90)90018-Z

which can be applied if the processor-wise sums are iid. This would not necessarily be the case if the underlying times were just pairwise independent. In particular, by Theorem 1 the expected makespan is bounded above by

E[M]kμ+σkn12n1.
Downey also gives a particular distribution achieving this bound, although the distribution changes as n does, and is not exactly natural.

Note that the bound says that the expected makespan can increase as any of the parameters increase: the variance σ2, the number of processors n, or the number of tasks per processor k.

For your second question, the low-variance scenario resulting in a larger makespan seems to be an unlikely outcome of a thought experiment. Let X=maxi=1mXi denote the makespan for the first distribution, and Y=maxi=1mYi for the second (with all other parameters the same). Here Xi and Yi denote the sums of k task durations corresponding to processor i under the two distributions. For all xkμ, independence yields

Pr[Xx]=i=1mPr[Xix]i=1mPr[Yix]=Pr[Yx].
Since most of the mass of the probability distribution of the maximum will be above its mean, E[X] will therefore tend to be larger than E[Y]. This is not a completely rigorous answer, but in short, the second case seems preferable.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.