Görev tamamlanma süresindeki varyans telafi etkisini nasıl etkiler?


16

Diyelim ki geniş bir görev koleksiyonumuz var . . . , Τ nτ1,τ2,...,τn ve işlemci (performans açısından) özdeş bir koleksiyon ρ1,ρ2,...,ρm tamamen paralel çalışır. İlgilendiğiniz senaryolar için olduğunu varsayabiliriz mn. Her τi bir işlemci atanan bir kez tamamlamak için zaman / döngü bir miktar alır ρjve bir kez atandığında, tamamlanana kadar yeniden atanamaz (işlemciler her zaman sonunda atanan görevleri tamamlar). Birbirlerinin olduğunu varsayalım τi gibi bir süre alır / devir Xi değil, önceden bilinen bazı ayrık rasgele dağılımından alınan. Bu soru için, hatta basit bir dağılım kabul edilebilir P(Xi=1)=P(Xi=5)=1/2 , ve tüm Xi olan ikili bağımsız. Bu nedenle μi=3 ve σ2=4 .

Statik olarak, zaman / döngü 0'da, tüm görevlerin tüm işlemcilere olabildiğince eşit olarak, eşit olarak rastgele atandığını varsayalım; böylece her işlemciye n / m görevleri ρjatanır (aynı zamanda sorunun amaçları için m | n olduğunu da varsayabiliriz ). Makaraya, son işlemcinin ρ atanan çalışmasını bitirdiği, atanan işi bitirdiği zaman / döngü diyoruz . İlk soru:n/mm|nρ

, n ve X i 'nin bir fonksiyonu olarak , M markası nedir? Özellikle, E [ M ] nedir? V a r [ M ] ?mnXiME[M]Var[M]

İkinci soru:

Varsayalım , ve X i , yani ikili bağımsız μ i = 3 ve σ 2 = 1 . M , n ve bu yeni X i'nin bir fonksiyonu olarakP(Xi=2)=P(Xi=4)=1/2Xiμi=3σ2=1mnXi 'nin marka nedir? Daha ilginç olarak, ilk bölümün cevabı ile nasıl karşılaştırılır?

Bazı basit düşünce deneyleri, ikincisinin cevabının, üreticinin daha uzun olduğunu göstermektedir. Peki bu nasıl ölçülebilir? Eğer (a) tartışmalı ya da (b) belirsizse örnek göndermekten mutluluk duyacağım. Bunun başarısına bağlı olarak, aynı varsayımlar altında dinamik bir atama şeması hakkında bir takip sorusu göndereceğim. Şimdiden teşekkürler!

Kolay bir vakanın analizi: m=1

Eğer , tüm n görevi aynı işlemciye yapılmaktadır. M markası , n görevi tamamıyla sıralı bir şekilde tamamlamanın tam zamanı . Bu nedenle, E [ M ]m=1nMn ve 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

Bu sonucu sorusunu cevaplamak için kullanmak mümkün görünebilir ; basitçe için bir ifade (veya yakın bir yaklaşım) bulmalıyız max ( Y 1 , Y 2 , . . . , Y'nin m ) burada Y, i = x i nm>1max(Y1,Y2,...,Ym) ,μY=nile rastgele bir değişkenYi=Xinm+1+Xinm+2+...+Xinm+nmveσ 2 Y =nμY=nmμX . Bu doğru yönde mi gidiyor?σY2=nmσX2


Güzel soru. Bugün sadece bir son tarih olmasaydı ...
Dave Clarke

Yanıtlar:


8

As , biz açısından bu bakabilirsiniz k ve n yerine n ve m . Diyelim ki T i , i- işlemcinin işini bitirmesi için geçen süredir .m=k×nknnmTii

Olarak büyür, bu olasılık T i = 5 k (işlemci sadece verildiği T = 5 bazı görevler) i yaklaşımlar 1 çok tamamlanma zamanı olarak tanımlanır, m bir x ( t i ) , E : [ M ] yaklaşımlar 5 k .nTi5kT=5i1max(Ti)E[M]5k

İkinci senaryoda bu bu nedenle işlemci sayısını artırmak 4–2 bölünmesini daha iyi hale getirir.4k

- işlemci başına görev sayısını arttırmaya ne dersiniz ? Artan k'nin ters etkisi vardır, şanssız görevlere sahip bir işlemciye sahip olma olasılığını azaltır. Şimdi eve gidiyorum ama buna daha sonra geri döneceğim. Benim "önsezi" olarak olmasıdır k büyür, farkı E [ M ] 4-2 bölünmüş ve 5-1 bölünmüş kaybolana arasında, E [ M ] ikisi için de aynı olur. Bu nedenle, belki de olsa, bazı özel durumlar ( k ve n'nin çok küçük spesifik değerleri) dışında 4–2'nin her zaman daha iyi olduğunu varsayabilirim .kkkE[M]E[M]kn

Özetlemek gerekirse:

  • Düşük varyans daha iyidir, diğer her şey eşittir.
  • İşlemci sayısı arttıkça daha düşük varyans daha önemli hale gelir.
  • İşlemci başına görev sayısı arttıkça daha düşük sapma daha az önem kazanır.

+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.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.