375 research outputs found

    Efficient Algorithms for Scheduling Moldable Tasks

    Full text link
    We study the problem of scheduling nn independent moldable tasks on mm processors that arises in large-scale parallel computations. When tasks are monotonic, the best known result is a (32+Ï”)(\frac{3}{2}+\epsilon)-approximation algorithm for makespan minimization with a complexity linear in nn and polynomial in log⁥m\log{m} and 1Ï”\frac{1}{\epsilon} where Ï”\epsilon is arbitrarily small. We propose a new perspective of the existing speedup models: the speedup of a task TjT_{j} is linear when the number pp of assigned processors is small (up to a threshold ÎŽj\delta_{j}) while it presents monotonicity when pp ranges in [ÎŽj,kj][\delta_{j}, k_{j}]; the bound kjk_{j} indicates an unacceptable overhead when parallelizing on too many processors. For a given integer Ύ≄5\delta\geq 5, let u=⌈ή2⌉−1u=\left\lceil \sqrt[2]{\delta} \right\rceil-1. In this paper, we propose a 1Ξ(ÎŽ)(1+Ï”)\frac{1}{\theta(\delta)} (1+\epsilon)-approximation algorithm for makespan minimization with a complexity O(nlog⁥nÏ”log⁥m)\mathcal{O}(n\log{\frac{n}{\epsilon}}\log{m}) where Ξ(ÎŽ)=u+1u+2(1−km)\theta(\delta) = \frac{u+1}{u+2}\left( 1- \frac{k}{m} \right) (m≫km\gg k). As a by-product, we also propose a Ξ(ÎŽ)\theta(\delta)-approximation algorithm for throughput maximization with a common deadline with a complexity O(n2log⁥m)\mathcal{O}(n^{2}\log{m})

    Schedulability analysis of timed CSP models using the PAT model checker

    Get PDF
    Timed CSP can be used to model and analyse real-time and concurrent behaviour of embedded control systems. Practical CSP implementations combine the CSP model of a real-time control system with prioritized scheduling to achieve efficient and orderly use of limited resources. Schedulability analysis of a timed CSP model of a system with respect to a scheduling scheme and a particular execution platform is important to ensure that the system design satisfies its timing requirements. In this paper, we propose a framework to analyse schedulability of CSP-based designs for non-preemptive fixed-priority multiprocessor scheduling. The framework is based on the PAT model checker and the analysis is done with dense-time model checking on timed CSP models. We also provide a schedulability analysis workflow to construct and analyse, using the proposed framework, a timed CSP model with scheduling from an initial untimed CSP model without scheduling. We demonstrate our schedulability analysis workflow on a case study of control software design for a mobile robot. The proposed approach provides non-pessimistic schedulability results

    Performance optimization and energy efficiency of big-data computing workflows

    Get PDF
    Next-generation e-science is producing colossal amounts of data, now frequently termed as Big Data, on the order of terabyte at present and petabyte or even exabyte in the predictable future. These scientific applications typically feature data-intensive workflows comprised of moldable parallel computing jobs, such as MapReduce, with intricate inter-job dependencies. The granularity of task partitioning in each moldable job of such big data workflows has a significant impact on workflow completion time, energy consumption, and financial cost if executed in clouds, which remains largely unexplored. This dissertation conducts an in-depth investigation into the properties of moldable jobs and provides an experiment-based validation of the performance model where the total workload of a moldable job increases along with the degree of parallelism. Furthermore, this dissertation conducts rigorous research on workflow execution dynamics in resource sharing environments and explores the interactions between workflow mapping and task scheduling on various computing platforms. A workflow optimization architecture is developed to seamlessly integrate three interrelated technical components, i.e., resource allocation, job mapping, and task scheduling. Cloud computing provides a cost-effective computing platform for big data workflows where moldable parallel computing models are widely applied to meet stringent performance requirements. Based on the moldable parallel computing performance model, a big-data workflow mapping model is constructed and a workflow mapping problem is formulated to minimize workflow makespan under a budget constraint in public clouds. This dissertation shows this problem to be strongly NP-complete and designs i) a fully polynomial-time approximation scheme for a special case with a pipeline-structured workflow executed on virtual machines of a single class, and ii) a heuristic for a generalized problem with an arbitrary directed acyclic graph-structured workflow executed on virtual machines of multiple classes. The performance superiority of the proposed solution is illustrated by extensive simulation-based results in Hadoop/YARN in comparison with existing workflow mapping models and algorithms. Considering that large-scale workflows for big data analytics have become a main consumer of energy in data centers, this dissertation also delves into the problem of static workflow mapping to minimize the dynamic energy consumption of a workflow request under a deadline constraint in Hadoop clusters, which is shown to be strongly NP-hard. A fully polynomial-time approximation scheme is designed for a special case with a pipeline-structured workflow on a homogeneous cluster and a heuristic is designed for the generalized problem with an arbitrary directed acyclic graph-structured workflow on a heterogeneous cluster. This problem is further extended to a dynamic version with deadline-constrained MapReduce workflows to minimize dynamic energy consumption in Hadoop clusters. This dissertation proposes a semi-dynamic online scheduling algorithm based on adaptive task partitioning to reduce dynamic energy consumption while meeting performance requirements from a global perspective, and also develops corresponding system modules for algorithm implementation in the Hadoop ecosystem. The performance superiority of the proposed solutions in terms of dynamic energy saving and deadline missing rate is illustrated by extensive simulation results in comparison with existing algorithms, and further validated through real-life workflow implementation and experiments using the Oozie workflow engine in Hadoop/YARN systems

    Diet-ethic: Fair Scheduling of Optional Computations in GridRPC Middleware

    Get PDF
    Most HPC platforms require users to submit a pre-determined number of computation requests (also called jobs). Unfortunately, this is cumbersome when some of the computations are optional, i.e., they are not critical, but their completion would improve results. For example, given a deadline, the number of requests to submit for a Monte Carlo experiment is difficult to choose. The more requests are completed, the better the results are, however, submitting too many might overload the platform. Conversely, submitting too few requests may leave resources unused and misses an opportunity to improve the results. This paper introduces and solves the problem of scheduling optional computations. An architecture which auto-tunes the number of requests is proposed, then implemented in the DIET GridRPC middleware. Real-life experiments show that several metrics are improved, such as user satisfaction, fairness and the number of completed requests. Moreover, the solution is shown to be scalable.La plupart des plate-formes HPC demandent Ă  l'utilisateur de soumettre un nombre prĂ©-dĂ©terminĂ© de requĂȘtes de calcul (aussi appelĂ©es " job "). Malheureusement, cela n'est pas pertinent quand une partie des calculs est optionnelle, c'est-Ă -dire, que l'exĂ©cution des requĂȘtes n'est pas critique pour l'utilisateur, mais que leur complĂ©tion pourrait amĂ©liorer les rĂ©sultats. Par exemple, Ă©tant donnĂ©e une date limite, le nombre de requĂȘtes Ă  soumettre pour une expĂ©rience Monte Carlo est difficile Ă  choisir. Plus il y a des requĂȘtes qui sont exĂ©cutĂ©es, meilleures sont les rĂ©sultats. Cependant, en soumettant trop de requĂȘtes, on risque de surcharger la plate-forme. À l'opposĂ©, en ne soumettant pas assez de requĂȘtes, les ressources sont sous-exploitĂ©es alors qu'elles auraient pu ĂȘtre utilisĂ©es pour amĂ©liorer les rĂ©sultats. Cet article introduit et rĂ©sout le problĂšme d'ordonnancer des requĂȘtes optionnelles. Une architecture qui choisit automatiquement le nombre de requĂȘtes est proposĂ©e puis implĂ©mentĂ©e dans l'intergiciel GridRPC DIET. Les expĂ©riences faites sur de vraies plate-formes - telles que Grid'5000 - montrent que plusieurs mĂ©triques peuvent ĂȘtre amĂ©liorĂ©es, telles que la satisfaction des utilisateurs, l'Ă©quitĂ© et le nombre des requĂȘtes exĂ©cutĂ©es. Enfin, la solution proposĂ©e passe Ă  l'Ă©chelle

    Brief Announcement: DeadlineAware Scheduling

    Get PDF
    ABSTRACT This paper presents a novel algorithm for scheduling big data jobs on large compute clusters. In our model, each job is represented by a DAG consisting of several stages linked by precedence constraints. The resource allocation per stage is malleable, in the sense that the processing time of a stage depends on the resources allocated to it (the dependency can be arbitrary in general). The goal of the scheduler is to maximize the total value of completed jobs, where the value for each job depends on its completion time. We design an algorithm for the problem which guarantees an expected constant approximation factor when the cluster capacity is sufficiently high. To the best of our knowledge, this is the first constant-factor approximation algorithm for the problem. The algorithm is based on formulating the problem as a linear program and then rounding an optimal (fractional) solution into a feasible (integral) schedule using randomized rounding

    Diet-ethic: Fair Scheduling of Optional Computations in GridRPC Middleware

    Get PDF
    Most HPC platforms require users to submit a pre-determined number of computation requests (also called jobs). Unfortunately, this is cumbersome when some of the computations are optional, i.e., they are not critical, but their completion would improve results. For example, given a deadline, the number of requests to submit for a Monte Carlo experiment is difficult to choose. The more requests are completed, the better the results are, however, submitting too many might overload the platform. Conversely, submitting too few requests may leave resources unused and misses an opportunity to improve the results. This paper introduces and solves the problem of scheduling optional computations. An architecture which auto-tunes the number of requests is proposed, then implemented in the DIET GridRPC middleware. Real-life experiments show that several metrics are improved, such as user satisfaction, fairness and the number of completed requests. Moreover, the solution is shown to be scalable.La plupart des plate-formes HPC demandent Ă  l'utilisateur de soumettre un nombre prĂ©-dĂ©terminĂ© de requĂȘtes de calcul (aussi appelĂ©es " job "). Malheureusement, cela n'est pas pertinent quand une partie des calculs est optionnelle, c'est-Ă -dire, que l'exĂ©cution des requĂȘtes n'est pas critique pour l'utilisateur, mais que leur complĂ©tion pourrait amĂ©liorer les rĂ©sultats. Par exemple, Ă©tant donnĂ©e une date limite, le nombre de requĂȘtes Ă  soumettre pour une expĂ©rience Monte Carlo est difficile Ă  choisir. Plus il y a des requĂȘtes qui sont exĂ©cutĂ©es, meilleures sont les rĂ©sultats. Cependant, en soumettant trop de requĂȘtes, on risque de surcharger la plate-forme. À l'opposĂ©, en ne soumettant pas assez de requĂȘtes, les ressources sont sous-exploitĂ©es alors qu'elles auraient pu ĂȘtre utilisĂ©es pour amĂ©liorer les rĂ©sultats. Cet article introduit et rĂ©sout le problĂšme d'ordonnancer des requĂȘtes optionnelles. Une architecture qui choisit automatiquement le nombre de requĂȘtes est proposĂ©e puis implĂ©mentĂ©e dans l'intergiciel GridRPC DIET. Les expĂ©riences faites sur de vraies plate-formes - telles que Grid'5000 - montrent que plusieurs mĂ©triques peuvent ĂȘtre amĂ©liorĂ©es, telles que la satisfaction des utilisateurs, l'Ă©quitĂ© et le nombre des requĂȘtes exĂ©cutĂ©es. Enfin, la solution proposĂ©e passe Ă  l'Ă©chelle

    Deadline-Aware Reservation-Based Scheduling

    Get PDF
    The ever-growing need to improve return-on-investment (ROI) for cluster infrastructure that processes data which is being continuously generated at a higher rate than ever before introduces new challenges for big-data processing frameworks. Highly complex mixed workload arriving at modern clusters along with a growing number of time-sensitive critical production jobs necessitates cluster management systems to evolve. Most big-data systems are not only required to guarantee that production jobs will complete before their deadline, but also minimize the latency for best-effort jobs to increase ROI. This research presents DARSS, a deadline-aware reservation-based scheduling system. DARSS addresses the above-stated problem by using a reservation-based approach to scheduling that supports temporal requirements of production jobs while keeping the latency for best-effort jobs low. Fined-grained resource allocation enables DARSS to schedule more tasks than a coarser-grained approach would. Furthermore, DARSS schedules production jobs as close to their deadlines as possible. This scheduling policy allows the system to maximize the number of low-priority tasks that can be scheduled opportunistically. DARSS is a scalable system that can be integrated with YARN. DARSS is evaluated on a simulated cluster of 300 nodes against a workload derived from Google Borg's trace. DARSS is compared with Microsoft's Rayon and YARN's built-in scheduler. DARSS achieves better production job acceptance rate than both YARN and Rayon. The experiments show that all of the production jobs accepted by DARSS complete before their deadlines. Furthermore, DARSS has a higher number of best-effort jobs serviced than Rayon. And finally, DARSS has lower latency for best-effort jobs than Rayon
    • 

    corecore