태그 보관물: scheduling

scheduling

작업 완료 시간의 차이가 makepan에 어떤 영향을 줍니까? 프로세서 할당 된 N

하자 우리가 작업의 큰 컬렉션을 가지고 있다고 및 프로세서 (성능의 관점에서) 동일한 모음 ρ (1) , ρ (2) , . . . , ρ m 완전히 병렬로 작동합니다. 관심있는 시나리오에서는 m n 이라고 가정 할 수 있습니다 . 각 τ i 는 일단 프로세서에 할당되면 완료하는 데 어느 정도의 시간 / 사이클이 소요됩니다

τ1,τ2,...,τn

ρ1,ρ2,...,ρm

mn

τi

ρj

할당 된 후에는 완료 될 때까지 다시 할당 할 수 없습니다 (프로세서는 항상 할당 된 작업을 완료합니다). 의 각 가정하자 시간의 양을 취 / 사이클 은 X 서버 내가 아니라, 사전에 알려진 몇 가지 이산 임의 분포에서 가져온. 이 질문에 대해, 우리는 심지어 간단한 분포를 가정 할 수있다 P ( X I = 1 ) =이 P ( X = 5 ) = 1 / 2 , 모든 X i가 있는 페어 독립을. 따라서 μ i = 3σ

τi

Xi

P(Xi=1)=P(Xi=5)=1/2

Xi

μi=3

σ2=4

.

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

ρj

n/m

m|n

ρ

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

m

n

Xi

M

E[M]

Var[M]

두 번째 질문 :

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

P(Xi=2)=P(Xi=4)=1/2

Xi

μi=3

σ2=1

m

n

Xi

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

쉬운 사례 분석 :

m=1

경우에 , 모든 N 개의 작업은 동일한 프로세서 예정이다. makespan Mn 개의 작업을 완전한 순차 방식으로 완료하는 시간 입니다. 따라서
E [ M ]

m=1

n

M

n



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 N

m>1

max(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?



답변

m=k×n

k

n

n

m

Ti

i

-th processor to finish its work.

n

Ti

5k

T=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.

답변

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.


답변