1 / 14

Parallel and Distributed Processing CSE 8380

Parallel and Distributed Processing CSE 8380. March 22, 2005 Session 18. Scheduling. Where are we now? Project Scheduling Interval Order with communication Heuristics Task Allocation. Definitions. start-time(v,i,f)

elsa
Télécharger la présentation

Parallel and Distributed Processing CSE 8380

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Parallel and Distributed ProcessingCSE 8380 March 22, 2005 Session 18

  2. Scheduling • Where are we now? • Project • Scheduling Interval Order with communication • Heuristics • Task Allocation

  3. Definitions • start-time(v,i,f) The earliest time at which task v can start execution on processor Pi in schedule f • task(i,t,f) The task scheduled on processor Pi at time t in schedule f. If there is no task scheduled on processor Pi at time t in schedule f, then task(i,t,f) returns the empty task f. Note that the priority of the empty task is less than the priority of any other task.

  4. Algorithm • The number of all successors of each node is used as each node’s priority. • Nodes with the highest priority are scheduled first. • Each task v is assigned to processor Pi with the earliest start time. • If start-time(v,i,f) = start-time(v,j,f), 1 ≤ i,j ≤ m, task v is assigned to processor Pi if task(i, start-time(v,i,f)-1, f) has the smaller priority (smaller number of successors).

  5. Example

  6. Heuristics A heuristic produces an answer in less than exponential time, but does not guarantee an optimal solution. Intuition is usually used to come up with heuristics that make use of special parameters that affect the system in an indirect way. A heuristic is said to be better than another heuristic if solutions fall closer to optimality more often, or if the time taken to obtain a near-optimal solution is less.

  7. Communication Delay versus Parallelism

  8. Clustering

  9. Duplications

  10. Task Allocation

  11. Minimum Cuts in a Two-Terminal Network In a two-terminal network graph G = (V,E), it is assumed that there are two specific nodes, a source node S and a sink node T, and a weight function W(e) for each edge eÎE. A cutset of the two-terminal network graph G is a set of edges C which, when removed, disconnects the set of nodes V into two sets: a source set VS that contains the node S, and a sink set VT that contains the node T, such that VSÇVT = f and VSÈ VT = V. The weight of each cutset W(C) is equal to the sum of the weight of all edges in C. A cutset C0 is called an optimal cutset or a minimum cutset if W(C0)≤ W(C), for any cutset C of the two-terminal network. This problem has been proven to have polynomial time solutions. The complexity of the most efficient algorithm to solve this problem is O(ne log n), where n and e are equal to the number of nodes and edges in the network, respectively.

  12. Optimal Algorithm – Stone, 1977 This algorithm assumes a restricted case of a distributed system made of only two processors, which may not need to be identical. The solution of the allocation problem is obtained as follows. A related two-terminal network graph is constructed from the relationships of the tasks in the task interaction graph. The network is constructed in a way such that each cutset in the two-terminal network graph corresponds in a one-to-one fashion to a task assignment, and that the weight of each cutset carries the total cost for the corresponding assignment. The network flow algorithm can then be applied on the two-terminal network. The minimum weight cutset obtained from the solution determines the task assignment that is optimal in terms of the total cost.

  13. Algorithm • Construct a two-terminal network as follows: • Add a source node labeled S1 and a sink node labeled S2 to represent processors p1 and p2, respectively. • For every node t in the original task interaction graph, add an edge from t to each of S1 and S2. The weight on the edge (t,S1) is the cost of executing t on p2, while the weight on the edge (t,S2) is the cost of executing t on p1. • A max-flow min-cut algorithm is applied to the obtained network and a minimum cut C is determined. • An optimal solution of the task assignment problem is obtained from the cut such that a task t is assigned to processor Pi if and only if the corresponding nodes t and Si belong to the same partition in C.

  14. Optimal Cut

More Related