| Feitelson, D., Rudolph, L.: Evaluation of Design Choices for Gang Scheduling using Distributed Hierarchical Control. Journal of Parallel & Distributed Computing (1996) 18-34 |
....when multiprogramming a set of parallel jobs on a multiprocessor machine [22] Coscheduling strives to ensure that all processes belonging to a job are scheduled at the same time. Subsequent work has generalized and refined the coscheduling (now often called gang scheduling) concept [5, 6, 8, 9, 11, 14, 15, 19, 23, 24, 25, 26]. Gang scheduling schemes are a practical result of the multiprocessor scheduling community and have been adapted for inclusion in several production systems including the Intel Paragon [4] CM 5 [3] Meiko CS 2, multiprocessor SGI workstations [1] and the IBM SP2 [17, 18] Work has been done to ....
....to left. The family of polices, LRS EQL, LRS S, LRS Sj, and LRS Lj, are defined in the same way as the family of Matrix algorithms above. 2. 3 DHC This algorithm is similar to the minimum fragmentation with selective disabling version of the DHC algorithm proposed by Feitelson and Rudolph [9]. It is based on a hierarchy of controllers. Each block of 2 PEs is assigned a controller that coordinates their activities. Controllers at higher levels of the hierarchy coordinate those at the lower levels. In addition, the controllers at each level have lateral connections among them. An ....
[Article contains additional citation context not shown here]
D. G. Feitelson and L. Rudolph. Evaluation of design choices for gang scheduling using distributed hierarchical control. Journal of Parallel and Distributed Computing, 35(1):18--34, May 1996.
.... tions [13, 14] The performance of gang scheduling schemes that use distributed hierarchical control has been analyzed from a queueing theoretic perspective [21, 22] Moreover, the performance of several gang scheduling algorithms has been studied by simulation on synthetically generated workloads [3, 7]. In this paper we present an empirical evaluation of various gang scheduling policies and design alternatives based on an actual parallel workload. Our focus is on the distributed hierarchical control approach to gang scheduling, although many of the principles and trends observed in this study ....
D. G. Feitelson and L. Rudolph. Evaluation of design choices for gang scheduling using distributed hierarchical control. J. Parallel and Distr. Comp., 35:18 34, 1996.
....when multiprogramming a set of parallel jobs on a multiprocessor machine [22] Coscheduling strives to ensure that all processes belonging to a job are scheduled at the same time. Subsequent work has generalized and refined the coscheduling (now often called gang scheduling) concept [5, 6, 8, 9, 11, 14, 15, 19, 23 26]. Gang scheduling schemes are a practical result of the multiprocessor scheduling community and have been adapted for inclusion in several production systems including the Intel Paragon [4] CM 5 [3] Meiko CS 2, multiprocessor SGI workstations [1] and the IBM SP2 [17, 18] Work has been done to ....
....Allocation The family of polices, LRS EQL, LRS S, LRS Sj, and LRS Lj, are defined in the same way as the family of Matrix algorithms above. 2. 3 DHC This algorithm is similar to the minimum fragmentation with selective disabling version of the DHC algorithm proposed by Feitelson and Rudolph [9]. It is based on a hierarchy of controllers. Each block of 2 i PEs is assigned a controller that coordinates their activities. Controllers at higher levels of the hierarchy coordinate those at the lower levels. In addition, the controllers at each level have lateral connections among them. An ....
[Article contains additional citation context not shown here]
D. G. Feitelson and L. Rudolph. Evaluation of design choices for gang scheduling using distributed hierarchical control. Journal of Parallel and Distributed Computing, 35(1):18--34, May 1996.
....in a workstation cluster that allows the time sharing of a 64 processor machine interconnected by Myrinet. Feitelson and Rudolph proposed the distributed hierarchical control, which is a scalable implementation of Gang scheduling based on buddy systems. The distributed hierarchical control (DHC) [12, 15, 13] defines a control structure over the parallel machine and combines time slicing with a buddy system partitioning scheme. In [12] a DHC scheme for supporting Gang scheduling was proposed. Gang schedulers based on the distributed hierarchical control structure has been implemented for the IBM ....
D. Feitelson and L. Rudolph. Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control. Journal of Parallel and Distributed Computing, 35:18--34, 1996.
....of gang service have been described in the literature. Hori et al. 16] describe a gang scheduler implementation in a workstation cluster that allows the time sharing of a 64 processor machine interconnected by Myrinet. Feitelson and Rudolph proposed the distributed hierarchical control (DHC) [11, 14, 12], which defines a control structure over the parallel machine and combines time slicing with a buddy system partitioning scheme. In [11] a DHC scheme for supporting gang scheduling was proposed. Gang schedulers based on the distributed hierarchical control structure has been implemented for the ....
D. Feitelson and L. Rudolph. Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control. Journal of Parallel and Distributed Computing, 35:18--34, 1996.
....sharing policies based on DSS. Section 4 presents our evaluation framework and detailed experimental results from a 64 processor SGI Origin2000. Section 5 concludes the paper. 2 2 Related Work A wealth of research works in multiprocessor scheduling have used gang scheduling (or coscheduling) [7, 13] as the policy of choice for parallel programs on multiprogrammed shared memory multiprocessors. Gang scheduling suggests that all kernel threads of a parallel program should be scheduled and preempted always as a unit, to provide the parallel program with the illusion of a dedicated system. ....
D. Feitelson and L. Rudolph, Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control, Journal of Parallel and Distributed Computing, Vol. 35(1), pp. 18--34, 1996.
....typical gang scheduling implementation where job wide context switch relies in a centralized controller, which limits scalability and efficient utilization of processors when a task blocks. Another algorithm using gang service aimed at providing scalability is the Distributed Hierarchical Control[4, 6]. However authors give no solution for the task blocking problem. In Concurrent Gang, the distribution of the scheduler among all processors without any hierarchy allows each PE decide for itself to do if a task blocks, without depending on any other PE. The global clock works as a support for ....
D. Feitelson and L. Rudolph. Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control. Journal of Parallel and Distributed Computing, 35:18--34, 1996.
....typical gang scheduling implementation where job wide context switch relies in a centralized controller, which limits scalability and efficient utilization of processors when a thread blocks. Another algorithm using gang service aimed at providing scalability is the Dynamic Hierarchical Control[7, 9]. However authors give no solution for the thread blocking problem. In Concurrent Gang, the distribution of the scheduler among all processors without any hierarchy allows each PE decide for itself to do if a thread blocks, without depending on any other PE. To state and analyze space sharing ....
D. Feitelson and L. Rudolph. Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control. Journal of Parallel and Distributed Computing, 35:18--34, 1996.
....involves providing service cyclically among a set of fixed partition configurations, each having a number of partitions equal to some power of two. They find that long jobs benefit substantially from this approach, but only at the cost of longer response times for short jobs. Feitelson and Rudolph [23] and Hori et al. 36] analyze a more flexible policy in which there is time slicing among multiple active sets of partitions. Lee et al. 45] study the interaction of gang scheduling and I O, and found that many jobs may tolerate the perturbations caused by I O, that I O bound jobs suffer under ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
....simultaneously on their respective processors. The mapping of processes to processors uses Ousterhout s matrix algorithm, where columns represent nodes and rows are scheduling slots [10] Packing of jobs into slots is done using a buddy system, as in the Distributed Hierarchical Control scheme [5, 6]. This uses a tree of controllers that preside over nested groups of powerof two processors. After we estimated the memory size of a job, we need to add this information to our scheduling decisions. The original gang scheduling algorithm considers only the load factor the number of running ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control ". J. Parallel & Distributed Comput. 35(1), pp. 18-- 34, May 1996.
....scheduling matrix, where columns represent the nodes of the system and rows represent time slots [13] The jobs in each row are scheduled in turn using coordinated context switching across all the nodes. The packing of the matrix is based on a variant of the Distributed Hierarchical Control scheme [5], which uses a buddy system to allocate processors in blocks that are powers of 2. Seven different workloads were used, of which four were models and three were actual workloads from production systems. The models used were those proposed by Feitelson [4] Jann [7] Downey [2] and Lublin [10] ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control ". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
....Dealing with this using preemption means that the job rectangle is cut into several slices, representing the work done during each time slice. 2.1 E ect of Job Size Distribution The packing of jobs obviously depends on the distribution of job sizes. A good example is provided by the DHC scheme [12], in which a buddy system is used for processor allocation: each request is extended to the next power of two, and allocations are always done is power of two blocks of processors. This scheme was evaluated with three di erent distributions: a uniform distribution in which all sizes are equally ....
....all sizes are equally likely, a harmonic distribution in which the probability of size s is proportional to 1=s, and a uniform distribution on powers of two. Both analysis and simulations showed signi cant di erences between the utilizations that could be obtained for the three distributions [12]. This corresponds to di erent degrees of fragmentation that are inherent to packing with these distributions. For example, with a uniform distribution, rounding each request size up to the next power of two leads to 25 loss to fragmentation the average between no loss (if the request is an ....
[Article contains additional citation context not shown here]
D. G. Feitelson and L. Rudolph, \Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput. 35(1), pp. 18-34, May 1996.
....the L2 cache. Since there are P processors, a maximum of P processes can execute at the same time. To schedule more than P processes, the system is time shared. We will assume processes are single threaded, and all P processors context switch at the same time as would be done in gang scheduling [6]. These assumptions are not central to our approach, rather for the sake of brevity, we have focused on a basic scheduling scenario. There may or may not be constraints in scheduling the ready processes. Constraints will merely affect the search for feasible schedules. A schedule is a mapping of ....
D. G. Feitelson and L. Rudolph. Evaluation of design choices for gang scheduling using distributed hierarchical control. Journal of Parallel and Distributed Computing, 1996.
....the jobs. Sometimes, it is even beneficial to let some processors remain idle so as to improve the overall performance. Although most research on job scheduling for high performance parallel processing is concerned only with the allocation of processors in order to maximize processor utilization [6, 5], scheduling with memory considerations is not new. Parsons [11] studied bounds on the achievable system throughput considering memory demand of parallel jobs. Batat [1] improved gang scheduling by imposing admission control based on the memory requirement of a new job and the available memory of ....
D. G. Feitelson and L. Rudolph. Evaluation of design choices for gang scheduling using distributed hierarchical control. Journal of Parallel and Distributed Computing, 1996.
....in the sense that PEs are assigned in groups rather than individually. These groups are organized as a buddy system, based on concepts that were originally developed for memory allocation [18, 25] and following the PE allocation mechanism in the Distributed Hierarchical Control scheme (DHC) [9, 10]. Specifically, the PEs are partitioned recursively into groups that are powers of two. Logically, each group has a controller, thus creating a hierarchy of such controllers. When a job of size n arrives, it is assigned to a controller of size 2 dlg ne (i.e. the smallest power of 2 that is ....
....If n is not a power of 2, only part of the PEs under the chosen controller are used. These are selected in groups that are powers of two, based on the loads on the controller s descendents. This scheme is equivalent to the minimal fragmentation scheme that was shown to be advantageous for DHC [9, 10]. The remaining PEs are not reserved or allocated in any sense, and can later be assigned to other (smaller) jobs. They can also be used to provide additional runtime to jobs that are mapped to other slots, via alternative scheduling. 2 Note that in some cases this may lead to opening a new slot ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput., 1996. to appear.
....powers of two. One example of this approach is a 2 D buddy system proposed for the partitioning of mesh computers [364, 363] The Cray T3D, which has a 3D torus topology, also requires partitions to be powers of two 6 [474] The DHC and DQT schemes for gang scheduling are based on a buddy system [197, 204, 217, 273, 272] (DHC is described in Section 5.4) A similar approach has also been proposed in the context of a parallel reduction engine [269] 3.2.2 Flexible Partition Sizes The architectural considerations that motivate the use of combinations of predefined partition sizes are mainly based on the topology ....
....that these threads will actually execute on different PEs. Spreading out the newly created threads like this includes a measure of implicit load balancing. Some initial results show that if a parallel system provides this service, it is not as important to provide explicit load balancing as well [204]. 4.1.1 Mapping The initial placement of threads is often referred to as mapping, with the implication that threads are mapped to PEs and do not migrate to other PEs later. The question is how to map threads to PEs. One simple approach that has received some attention is to use random mapping: ....
[Article contains additional citation context not shown here]
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
....the grandchildren control quarters, and so on. This control structure is used to maintain data about load on different parts of the system. When a request to map a new job arrives, it is handled by the controllers at the level that has enough PEs for the job s size. This approach is used in DHC [120, 121, 130], in DQT [169, 168] in NETRA [64] and for hypercubes [79, 23, 6] Actually, the same structure has also been proposed for maintaining and distributing the load information required to map single threads as well, in AMPS [186] and in APERM 2 [165] Mapping based on load conditions is appropriate ....
....to move from one group to the other as part of the context switch. But this is required only if one of the groups must grow. There is no need to synchronize if the groups only split into smaller groups. This observation is used in the design of the Distributed Hierarchical Control (DHC) scheme [120, 121]. The DHC scheme partitions the PEs using a buddy system arrangement, that is by successively dividing them into halves. A separate (logical) controller is associated with each partition (Fig. 19) The scheduling is carried out in cycles. Each cycle starts with all the PEs in one group, which is ....
[Article contains additional citation context not shown here]
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
.... most of the weight is at low values, and strong discrete components appear at powers of two (two examples are given in Figure 2) This result is significant because jobs using power of two partitions are easier to pack, and small jobs may be used to fill in holes between larger jobs [6, 13]. Thus including or omitting these features has a significant impact on the performance of the modeled system. 4 Weights In the previous section we espoused the value of characterizing workloads by using distributions rather than just moments. However, care must be taken in collecting the data ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
....or none do. In order to map the processes to processors, we use Ousterhout s matrix algorithm, where columns represent nodes and rows are scheduling slots [16] Packing of jobs into slots is done using a buddy system, as was proposed in the context of the Distributed Hierarchical Control scheme [8, 9]. This tends to allocate processors in pre defined groups that are powers of 2, also leaving such groups free for future use. After we estimated the memory size of a job, we need to add this information to our scheduling decisions. We need a function that will take into consideration all factors ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control ". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
....reduce the average response time without affecting the average throughput rate. Throughput has the same problem as utilization: by focusing on the average values, the system may undermine the primary goal. A parallel job mix may be difficult to schedule and can cause significant fragmentation [16]. For example, a 27 node job on a 32 node parallel machine leaves an awkward 5 nodes free. If one is interested in maximizing the average number of jobs processed by the system, it might be better to ignore jobs that cause fragmentation altogether. 2.4 Reduce Average Response time Reducing ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput., 1996. to appear.
....can provide. Thus the system can take the current load into account, and reduce the partition sizes under high load conditions. However, this scheme also requires a change of user interfaces, albeit much less disruptive than dynamic partitioning. The preferred solution is to use gang scheduling [22,7,8,27]. With gang scheduling, jobs receive the number of processors requested, but only for a limited time quantum. Then a multi context switch is performed on all the processors at once, and another job (or set of jobs) is scheduled instead. Thus all jobs can execute concurrently using time slicing, ....
D. G. Feitelson and L. Rudolph, "Evaluation of design choices for gang scheduling using distributed hierarchical control". J. Parallel & Distributed Comput. 35(1), pp. 18--34, May 1996.
No context found.
Feitelson, D., Rudolph, L.: Evaluation of Design Choices for Gang Scheduling using Distributed Hierarchical Control. Journal of Parallel & Distributed Computing (1996) 18-34
No context found.
D. G. Feitelson, L. Rudolph, "Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control", journal of Parallel and Distributed Computing 35, pp. 18-34 (1996)
No context found.
D. G. Feitelson, L. Rudolph, "Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control", journal of Parallel and Distributed Computing 35(1), pp. 18-34, May 1996.
No context found.
D. G. Feitelson and L. Rudolph. Evaluation of Design Choices for Gang Scheduling Using Distributed Hierarchical Control. Journal of Parallel and Distributed Computing, 35:18--34, 1996.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC