Disons que nous avons une grande collection de tâches et une collection de processeurs identiques (en termes de performances) qui fonctionnent complètement dans parallèle. Pour les scénarios d'intérêt, nous pouvons supposer . Chaque prend un certain temps / cycles à terminer une fois qu'il est affecté à un processeur , et une fois qu'il est attribué, il ne peut pas être réaffecté jusqu'à ce qu'il soit terminé (les processeurs finissent toujours par terminer les tâches assignées). Supposons que chaque prenne une quantité de temps / cycles, inconnue à l'avance, tirée d'une distribution aléatoire discrète. Pour cette question, nous pouvons même supposer une distribution simple: , et tous les sont indépendants par paire. Par conséquent et .
Supposons que, statiquement, au temps / cycle 0, toutes les tâches soient assignées aussi uniformément que possible à tous les processeurs, uniformément au hasard; donc chaque processeur se voit attribuer tâches (on peut tout aussi bien supposer aux fins de la question). Nous appelons le makespan le temps / cycle auquel le dernier processeur ρ ∗ pour terminer son travail assigné, termine le travail qui lui a été assigné. Première question:
En fonction de , et des , quel est le makespan ? Plus précisément, qu'est-ce que ? ?
Deuxième question:
Supposons que , et tous les sont indépendants deux à deux, de sorte que et . En fonction de , et de ces nouveaux , quelle est la durée? Plus intéressant, comment se compare-t-il à la réponse de la première partie?
Certaines expériences de pensée simples démontrent que la réponse à cette dernière est que la durée de fabrication est plus longue. Mais comment cela peut-il être quantifié? Je serai heureux de publier un exemple si cela est (a) controversé ou (b) pas clair. En fonction du succès de celui-ci, je posterai une question de suivi sur un schéma d'affectation dynamique sous ces mêmes hypothèses. Merci d'avance!
Analyse d'un cas facile:
Si , toutes les tâches sont planifiées sur le même processeur. Le makespan est le moment idéal pour effectuer tâches de manière séquentielle complète. Par conséquent, et V a r [ M ]
Il semble qu'il soit possible d'utiliser ce résultat pour répondre à la question pour ; nous avons simplement besoin de trouver une expression (ou approximation) pour max ( Y 1 , Y 2 , . . . , Y m ) où Y i = X i n , une variable aléatoire avecμY=netσ 2 Y =n . Cette direction va-t-elle dans la bonne direction?