10 research outputs found

    Performance Evaluation of Dynamic Scheduling for Grid Systems

    Get PDF
    Schedulers are applications responsible for job management including resource allocation for a specific job, splitting them to ensure parallel task execution, data management, event correlation, and service-level management capabilities. When Grids allotted a number of jobs, such applications have to consider the overhead time, cost regarding to and from Grid resources, job transmission and at job processing, Grid resources for allocation of the jobs. In this paper, it is proposed to investigate the performance of dynamic scheduling algorithm of schedulers for executing different number of tasks is evaluated

    Autonomous grid scheduling using probabilistic job runtime scheduling

    Get PDF
    Computational Grids are evolving into a global, service-oriented architecture – a universal platform for delivering future computational services to a range of applications of varying complexity and resource requirements. The thesis focuses on developing a new scheduling model for general-purpose, utility clusters based on the concept of user requested job completion deadlines. In such a system, a user would be able to request each job to finish by a certain deadline, and possibly to a certain monetary cost. Implementing deadline scheduling is dependent on the ability to predict the execution time of each queued job, and on an adaptive scheduling algorithm able to use those predictions to maximise deadline adherence. The thesis proposes novel solutions to these two problems and documents their implementation in a largely autonomous and self-managing way. The starting point of the work is an extensive analysis of a representative Grid workload revealing consistent workflow patterns, usage cycles and correlations between the execution times of jobs and its properties commonly collected by the Grid middleware for accounting purposes. An automated approach is proposed to identify these dependencies and use them to partition the highly variable workload into subsets of more consistent and predictable behaviour. A range of time-series forecasting models, applied in this context for the first time, were used to model the job execution times as a function of their historical behaviour and associated properties. Based on the resulting predictions of job runtimes a novel scheduling algorithm is able to estimate the latest job start time necessary to meet the requested deadline and sort the queue accordingly to minimise the amount of deadline overrun. The testing of the proposed approach was done using the actual job trace collected from a production Grid facility. The best performing execution time predictor (the auto-regressive moving average method) coupled to workload partitioning based on three simultaneous job properties returned the median absolute percentage error centroid of only 4.75%. This level of prediction accuracy enabled the proposed deadline scheduling method to reduce the average deadline overrun time ten-fold compared to the benchmark batch scheduler. Overall, the thesis demonstrates that deadline scheduling of computational jobs on the Grid is achievable using statistical forecasting of job execution times based on historical information. The proposed approach is easily implementable, substantially self-managing and better matched to the human workflow making it well suited for implementation in the utility Grids of the future

    Mecanismos de previsão de perda de deadline para tratadores de eventos RTSJ

    Get PDF
    Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2014Estrategias para estimar a probabilidade de deadlines firmes serem alcançados são fundamentais porque permitem a realização de ações corretivas para a melhoria do desempenho do sistema. Este tipo de estrategia permite a avaliação de sistemas de tempo real que estão em funcionamento, principalmente quando ha alguma mudança quanto ao projeto inicial, ou mesmo avaliar novos projetos para analisar se as restrições temporais foram definidas adequadamente. Nesta dissertação são apresentados dois mecanismos de previsão de perda de deadline em sistemas monoprocessados e multiprocessados de tempo real firme. O Mecanismo de Previsão de Perda de Deadline Baseado na Folga (MBF) utiliza dados sobre o comportamento das tarefas (deadline, tempo de computação e o tempo de espera na fila de prontos do processador) para calcular a folga e determinar se o deadline pode ser cumprido. O Mecanismo de Previsão de Perda de Deadline Baseado no Histórico (MBH) utiliza regressão linear e relaciona dados de um histórico de execuções passadas, que possui o tamanho da fila de prontos do processador e seu respectivo tempo de resposta, com o tamanho atual da fila de prontos do processador para calcular o tempo de resposta previsto da thread e depois definir a probabilidade dela cumprir seu deadline. Sera apresentado um modelo de tarefas para aplicações não críticas em um sistema de tempo real firme que caracteriza uma aplicação real utilizada nos testes, o cruise control. Estes testes foram feitos utilizando uma implementação em Java RTS desta aplicação em um ambiente não especialista, próximo de um ambiente de tempo real comum, com varias configurações, buscando abranger uma grande gama de cenários. Após os testes, a qualidade das previsões é avaliada utilizando as Métricas Taxa Relativa de Erro e Taxa de Previsões Corretas. Os resultados demonstram que ambos os mecanismos trazem bons resultados em ambientes com cargas baixas, medias e altas, sendo o MBF um excelente previsor para sistemas monoprocessados e o MBH mais adequado aos sistemas multiprocessados.Abstract: Strategies to estimate the probability of rm deadlines be achieved areessential because they allow the use of corrective actions to improvesystem performance. This type of strategy allows the evaluation of realtimesystems that are in operation, especially when there is any changeon the initial design, or evaluate new projects to analyze whether thetemporal constraints were appropriately settled. In this dissertation,two deadline missing prediction mechanisms for rm real-time uniprocessorand multiprocessor systems are presented. The Deadline MissingPrediction Mechanism Based on Slack (MBF) uses data of tasks's behavior(deadline, computation time and the waiting time in the processorready queue) to calculate the slack and determine whether the deadlinecan be met. The Deadline Missing Prediction Mechanism Based onHistorical Data (MBH) uses linear regression and associates data froma past execution's historical, which is the size of the processor readyqueue and its associated response time, with the current size of processorready queue to calculate the predicted response time of the threadand then dene the probability of meeting its deadline. A model of tasksfor non-critical applications in a rm real-time system which characterizesa real application, similar to the cruise control, will be usedin the tests. These tests were done using an implementation in JavaRTS applied to a non-specialist environment as a common real-timeenvironment with various congurations scenarios. The quality of theforecasts is evaluated using the metrics Relative Error Rate and CorrectPrediction Rate. The results indicate that both mechanisms improve theperformance in environments with high, medium and low system loadwhereas the MBF being an adequate predictor for uniprocessor systemsand the MBH best suited to multiprocessor systems

    ADEPT Runtime/Scalability Predictor in support of Adaptive Scheduling

    Get PDF
    A job scheduler determines the order and duration of the allocation of resources, e.g. CPU, to the tasks waiting to run on a computer. Round-Robin and First-Come-First-Serve are examples of algorithms for making such resource allocation decisions. Parallel job schedulers make resource allocation decisions for applications that need multiple CPU cores, on computers consisting of many CPU cores connected by different interconnects. An adaptive parallel scheduler is a parallel scheduler that is capable of adjusting its resource allocation decisions based on the current resource usage and demand. Adaptive parallel schedulers that decide the numbers of CPU cores to allocate to a parallel job provide more flexibility and potentially improve performance significantly for both local and grid job scheduling compared to non-adaptive schedulers. A major reason why adaptive schedulers are not yet used practically is due to lack of knowledge of the scalability curves of the applications, and high cost of existing white-box approaches for scalability prediction. We show that a runtime and scalability prediction tool can be developed with 3 requirements: accuracy comparable to white-box methods, applicability, and robustness. Applicability depends only on knowledge feasible to gain in a production environment. Robustness addresses anomalous behaviour and unreliable predictions. We present ADEPT, a speedup and runtime prediction tool that satisfies all criteria for both single problem size and across different problem sizes of a parallel application. ADEPT is also capable of handling anomalies and judging reliability of its predictions. We demonstrate these using experiments with MPI and OpenMP implementations of NAS benchmarks and seven real applications

    Analysis and design development of parallel 3-D mesh refinement algorithms for finite element electromagnetics with tetrahedra

    Get PDF
    Optimal partitioning of three-dimensional (3-D) mesh applications necessitates dynamically determining and optimizing for the most time-inhibiting factors, such as load imbalance and communication volume. One challenge is to create an analytical model where the programmer can focus on optimizing load imbalance or communication volume to reduce execution time. Another challenge is the best individual performance of a specific mesh refinement demands precise study and the selection of the suitable computation strategy. Very-large-scale finite element method (FEM) applications require sophisticated capabilities for using the underlying parallel computer's resources in the most efficient way. Thus, classifying these requirements in a manner that conforms to the programmer is crucial.This thesis contributes a simulation-based approach for the algorithm analysis and design of parallel, 3-D FEM mesh refinement that utilizes Petri Nets (PN) as the modeling and simulation tool. PN models are implemented based on detailed software prototypes and system architectures, which imitate the behaviour of the parallel meshing process. Subsequently, estimates for performance measures are derived from discrete event simulations. New communication strategies are contributed in the thesis for parallel mesh refinement that pipeline the computation and communication time by means of the workload prediction approach and task breaking point approach. To examine the performance of these new designs, PN models are created for modeling and simulating each of them and their efficiencies are justified by the simulation results. Also based on the PN modeling approach, the performance of a Random Polling Dynamic Load Balancing protocol has been examined. Finally, the PN models are validated by a MPI benchmarking program running on the real multiprocessor system. The advantages of new pipelined communication designs as well as the benefits of PN approach for evaluating and developing high performance parallel mesh refinement algorithms are demonstrated

    Robust applications in time-shared distributed systems

    Get PDF

    Autonomous grid scheduling using probabilistic job runtime forecasting.

    Get PDF
    Computational Grids are evolving into a global, service-oriented architecture a universal platform for delivering future computational services to a range of applications of varying complexity and resource requirements. The thesis focuses on developing a new scheduling model for general-purpose, utility clusters based on the concept of user requested job completion deadlines. In such a system, a user would be able to request each job to finish by a certain deadline. and possibly to a certain monetary cost. Implementing deadline scheduling is dependent on the ability to predict the execution time of each queued job. and on an adaptive scheduling algorithm able to use those predictions to maximise deadline adherence. The thesis proposes novel solutions to these two problems and documents their implementation in a largely autonomous and self-managing way. The starting point of the work is an extensive analysis of a representative Grid workload revealing consistent workflow patterns, usage cycles and correlations between the execution times of jobs and its properties commonly collected by the Grid middleware for accounting purposes. An automated approach is proposed to identify these dependencies and use them to partition the highly variable workload into subsets of more consistent and predictable behaviour. A range of time-series forecasting models, applied in this context for the first time, were used to model the job execution times as a function of their historical behaviour and associated properties. Based on the resulting predictions of job runtimes a novel scheduling algorithm is able to estimate the latest job start time necessary to meet the requested deadline and sort the queue accordingly to minimise the amount of deadline overrun. The testing of the proposed approach was done using the actual job trace collected from a production Grid facility. The best performing execution time predictor (the auto-regressive moving average method) coupled to workload partitioning based on three simultaneous job properties returned the median absolute percentage error eentroid of only 4.75CX. This level of prediction accuracy enabled the proposed deadline scheduling method to reduce the average deadline overrun time ten-fold compared to the benchmark batch scheduler. Overall, the thesis demonstrates that deadline scheduling of computational jobs on the Grid is achievable using statistical forecasting of job execution times based on historical information. The proposed approach is easily implementable, substantially self-managing and better matched to the human workflow making it well suited for implementation in the utility Grids of the future
    corecore