2015-10-12 38 views
0

我正在編寫一個程序,它需要用Java編寫的一些任務,然後在同一個局域網上的計算機上執行(有關這種情況的細節不在此問題範圍內)。我應該使用哪種類型的調度算法?

任務將全部立即給予程序,這意味着工作的主要部分是將任務分開並將任務分配給網絡上的機器。我假設這將通過某種調度算法來完成。

E.g.該程序獲得50個任務,在局域網上有3臺計算機,每臺計算機有4個核心。應如何安排這些任務?是否可以通過將機器數量與機器數量分解來完成任務?

假設我有這些機器的硬件規格,我應該使用什麼算法來安排這些任務?

+0

你有什麼其他的要求?有沒有理由不採用先到先得的方式? – azurefrog

+0

缺少一些細節。例如。硬件規格是完全無用的,除非您可以確定約。需要的操作數量/所需的空間等。還需要知道機器與執行任務所花費的時間相關的時間。 – fabian

+0

@azurefrog我已經更新了這個問題 - 我考慮過使用FCFS算法,但執行時間可能因任務不同而不同,這意味着如果我將包含大型任務的一組任務發送給資源較低的計算機,則需要永久完成。然而,這個項目正處於開發的早期階段,所以想要了解那裏比什麼都更多。 – Tom

回答

0

在做了一些更多的研究後,我發現我的問題更多的是一個負載平衡問題,而不是一個調度問題。這些任務需要在可用的網絡資源之間進行正確的平衡,並由每臺計算機上的核心數加權。

相關問題