Як відхилення в часі виконання завдання впливає на простір?


16

Скажімо, у нас є велика колекція завдань та колекція однакових (за рівнем продуктивності) процесорів які повністю працюють у паралельний. Для цікавих сценаріїв ми можемо припустити, що . Кожен потребує певного часу / циклів для завершення після того, як він призначений процесору , і як тільки він призначений, він не може бути перепризначений до завершення (процесори завжди з часом виконують призначені завдання). Припустимо, що кожен \ tau_i займає кількість часу / циклів X_iτ1,τ2,...,τnρ1,ρ2,...,ρmmnτiρjτiXi, не відома заздалегідь, взята з деякого дискретного випадкового розподілу. Для цього питання ми можемо навіть припустити простий розподіл: P(Xi=1)=P(Xi=5)=1/2 , і всі Xi попарно незалежні. Тому μi=3 і σ2=4 .

Припустимо, що статично в момент часу / циклу 0 всі завдання призначаються максимально рівномірно всім процесорам, рівномірно випадково; тому кожному процесору ρj призначено n/m завдань (ми можемо так само добре вважати m|n для цілей питання). Ми називаємо makepan часом / циклом, коли останній процесор ρ закінчив призначену роботу, закінчує роботу, яку йому було призначено. Перше питання:

Як функція m , n та Xi , що таке простір M ? Зокрема, що таке E[M] ? Var[M] ?

Друге питання:

Припустимо, P(Xi=2)=P(Xi=4)=1/2 , і всі Xi попарно незалежні, тому μi=3 і σ2=1 . Як функція m , n та цих нових Xi , що таке пробіл? Що цікавіше, як воно порівнюється з відповіддю з першої частини?

Деякі прості експерименти з думкою демонструють, що відповідь на останнє полягає в тому, що простір довше. Але як це можна визначити кількісно? Я буду радий надіслати приклад, якщо це або (а) суперечливо або (б) незрозуміло. Залежно від успіху з цим, я опублікую наступне запитання щодо динамічної схеми призначення відповідно до цих самих припущень. Спасибі заздалегідь!

Аналіз легкого випадку: m=1

Якщо m=1 , то всі n завдань заплановані на один і той же процесор. Makepan M - саме час для завершення n завдань повністю послідовно. Тому

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>1max(Y1,Y2,...,Ym) µY=nYi=Xinm+1+Xinm+2+...+Xinm+nmσ 2 Y =nμY=nmμXσY2=nmσX2


Приємне запитання. Якби тільки не було дедлайну сьогодні…
Дейв Кларк

Відповіді:


8

Як , ми можемо розглядати це через і замість і . Скажімо, - це час, який потрібно -му процесору, щоб закінчити свою роботу.k n n m T i im=k×nknnmTii

З ростом зростає ймовірність того, що = (процесору було призначено лише завдань) для деяких наближається до , тому простір визначається як , наближається до .T i 5 k T = 5 i 1 m a x ( T i ) E [ M ] 5 knTi5kT=5i1max(Ti)E[M]5k

Для другого сценарію це тому збільшення кількості процесорів робить розділення на 4–2 краще.4k

А як щодо - збільшення кількості завдань на один процесор? Збільшення має протилежний ефект, це робить меншою ймовірність наявності процесора з невдалим набором завдань. Зараз я йду додому, але повернусь до цього пізніше. Моя «голова» полягає в тому, що в міру зростання різниця в між 4–2 розщепленням і 5–1 розщепленням зникає, стає однаковим для обох. Тож я б припустив, що 4–2 завжди кращий, за винятком, можливо, для деяких особливих випадків (дуже малих питомих значень і ), якщо навіть це.k k E [ M ] E [ M ] k nkkkE[M]E[M]kn

Отже, підсумовуючи:

  • Нижня дисперсія краще, а всі інші рівні.
  • Зі збільшенням кількості процесорів менша дисперсія стає важливішою.
  • Зі збільшенням кількості завдань на один процесор менша дисперсія стає менш важливою.

+1 Відмінна інтуїція, і це допомагає уточнити і моє мислення. Таким чином, збільшується кількість процесорів, як правило, збільшується простір за слабкого припущення про масштабування; і збільшується кількість завдань, як правило, зменшується простір при сильному припущенні масштабування (звичайно, це займає більше часу; я маю на увазі співвідношення робота / пробіл покращується). Це цікаві спостереження, і вони здаються правдивими;
Patrick87

перший виправдовується тим, що має тенденцію до 1 для фіксованого k і збільшення n ; останнє тим, що V a r [ X + X ] = V a r [ X ] + V a r [ X ] = 2 σ 24 σ 2 = 41(1P(X=5)k)n1kn ... тому дисперсія не збільшується лінійно як функція k . Це сумісно з вашим мисленням (саме так я інтерпретую те, що ви мали досі)? Var[X+X]=Var[X]+Var[X]=2σ24σ2=4Var[X]=Var[2X]k
Patrick87

Я не знаю, звідки взялася "горбанка"; воно не відповідає решті евристичних міркувань.
Андраш Саламон

2

Я вважаю, що евристичні аргументи часто є досить оманливими при розгляді планування завдань (і тісно пов’язаних з ними проблем, як упаковка бін). Можуть статися речі, котрі є інтуїтивно зрозумілими. Для такого простого випадку варто насправді зробити теорію ймовірностей.

Нехай з k додатним цілим числом. Припустимо, T i j - це час, необхідний для виконання j- ї задачі, заданої процесору i . Це випадкова величина із середнім μ та дисперсією σ 2 . Очікуваний пробіл у першому випадку - E [ M ] = E [ max { k j = 1 T i ji = 1 , 2 , ,n=kmkTijjiμσ2 Усі суми є iid із середнім k μ та дисперсією k σ 2 , припускаючи, що T i j - всі iid (це сильніше, ніж попарна незалежність).

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

Тепер, щоб отримати очікування максимуму, потрібно або більше інформації про розподіл, або потрібно встановити межі, що не мають розподілу, такі як:

  • Пітер Дж. Дауні, без обмежень щодо очікування максимуму при застосуванні планових програм , Дослідження операційних досліджень 9 , 189–2019, 1990 рр. Doi: 10.1016 / 0167-6377 (90) 90018-Z

E[M]kμ+σkn12n1.
n

σ2nk

X=maxi=1mXiY=maxi=1mYiXiYikixkμ

Pr[Xx]=i=1mPr[Xix]i=1mPr[Yix]=Pr[Yx].
E[X]E[Y]
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.