Machine Learning Based Online Performance Prediction for Runtime Parallelization and Task Scheduling

Machine Learning Based Online Performance Prediction for Runtime Parallelization and Task Scheduling PDF Author:
Publisher:
ISBN:
Category :
Languages : en
Pages : 14

Get Book Here

Book Description
With the emerging many-core paradigm, parallel programming must extend beyond its traditional realm of scientific applications. Converting existing sequential applications as well as developing next-generation software requires assistance from hardware, compilers and runtime systems to exploit parallelism transparently within applications. These systems must decompose applications into tasks that can be executed in parallel and then schedule those tasks to minimize load imbalance. However, many systems lack a priori knowledge about the execution time of all tasks to perform effective load balancing with low scheduling overhead. In this paper, we approach this fundamental problem using machine learning techniques first to generate performance models for all tasks and then applying those models to perform automatic performance prediction across program executions. We also extend an existing scheduling algorithm to use generated task cost estimates for online task partitioning and scheduling. We implement the above techniques in the pR framework, which transparently parallelizes scripts in the popular R language, and evaluate their performance and overhead with both a real-world application and a large number of synthetic representative test scripts. Our experimental results show that our proposed approach significantly improves task partitioning and scheduling, with maximum improvements of 21.8%, 40.3% and 22.1% and average improvements of 15.9%, 16.9% and 4.2% for LMM (a real R application) and synthetic test cases with independent and dependent tasks, respectively.

Machine Learning Based Online Performance Prediction for Runtime Parallelization and Task Scheduling

Machine Learning Based Online Performance Prediction for Runtime Parallelization and Task Scheduling PDF Author:
Publisher:
ISBN:
Category :
Languages : en
Pages : 14

Get Book Here

Book Description
With the emerging many-core paradigm, parallel programming must extend beyond its traditional realm of scientific applications. Converting existing sequential applications as well as developing next-generation software requires assistance from hardware, compilers and runtime systems to exploit parallelism transparently within applications. These systems must decompose applications into tasks that can be executed in parallel and then schedule those tasks to minimize load imbalance. However, many systems lack a priori knowledge about the execution time of all tasks to perform effective load balancing with low scheduling overhead. In this paper, we approach this fundamental problem using machine learning techniques first to generate performance models for all tasks and then applying those models to perform automatic performance prediction across program executions. We also extend an existing scheduling algorithm to use generated task cost estimates for online task partitioning and scheduling. We implement the above techniques in the pR framework, which transparently parallelizes scripts in the popular R language, and evaluate their performance and overhead with both a real-world application and a large number of synthetic representative test scripts. Our experimental results show that our proposed approach significantly improves task partitioning and scheduling, with maximum improvements of 21.8%, 40.3% and 22.1% and average improvements of 15.9%, 16.9% and 4.2% for LMM (a real R application) and synthetic test cases with independent and dependent tasks, respectively.

Organic Computing — A Paradigm Shift for Complex Systems

Organic Computing — A Paradigm Shift for Complex Systems PDF Author: Christian Müller-Schloer
Publisher: Springer Science & Business Media
ISBN: 3034801300
Category : Computers
Languages : en
Pages : 629

Get Book Here

Book Description
Organic Computing has emerged as a challenging vision for future information processing systems. Its basis is the insight that we will increasingly be surrounded by and depend on large collections of autonomous systems, which are equipped with sensors and actuators, aware of their environment, communicating freely, and organising themselves in order to perform actions and services required by the users. These networks of intelligent systems surrounding us open fascinating ap-plication areas and at the same time bear the problem of their controllability. Hence, we have to construct such systems as robust, safe, flexible, and trustworthy as possible. In particular, a strong orientation towards human needs as opposed to a pure implementation of the tech-nologically possible seems absolutely central. The technical systems, which can achieve these goals will have to exhibit life-like or "organic" properties. "Organic Computing Systems" adapt dynamically to their current environmental conditions. In order to cope with unexpected or undesired events they are self-organising, self-configuring, self-optimising, self-healing, self-protecting, self-explaining, and context-aware, while offering complementary interfaces for higher-level directives with respect to the desired behaviour. First steps towards adaptive and self-organising computer systems are being undertaken. Adaptivity, reconfigurability, emergence of new properties, and self-organisation are hot top-ics in a variety of research groups worldwide. This book summarises the results of a 6-year priority research program (SPP) of the German Research Foundation (DFG) addressing these fundamental challenges in the design of Organic Computing systems. It presents and discusses the theoretical foundations of Organic Computing, basic methods and tools, learning techniques used in this context, architectural patterns and many applications. The final outlook shows that in the mean-time Organic Computing ideas have spawned a variety of promising new projects.

Trace-Based Runtime Prediction of Reoccurring Data-Parallel Processing Jobs

Trace-Based Runtime Prediction of Reoccurring Data-Parallel Processing Jobs PDF Author: Alireza Alamgiralem
Publisher: GRIN Verlag
ISBN: 3346602001
Category : Computers
Languages : en
Pages : 103

Get Book Here

Book Description
Master's Thesis from the year 2021 in the subject Engineering - Computer Engineering, grade: 1.7, Technical University of Berlin, language: English, abstract: The present research proposes a novel approach to estimate incoming jobs runtime based on similarities of reocurring jobs. To achieve this goal, we utilize the latest achievements in neural network techniques to embed the job dependencies. Subsequently, we perform multiple clustering techniques to form meaningful groups of reoccurring jobs. Finally, based on the similarities within the groups of samples, we predict runtimes. A recently published trace dataset allows us to develop and evaluate our contribution with more than 200,000 complex and real-world jobs. The cloud data centers should daily handle numerous jobs with complex parallelization. In order to schedule such a heavy and complicated workload and reach efficient resource utilization, runtime prediction is critical. Moreover, accurate runtime prediction may assist cloud users in choosing their required resources more intelligently. Despite the importance of runtime prediction, achieving an accurate prediction is not straightforward because the execution time of jobs in complicated environments of clouds is affected by many factors, e.g., cluster status, users’ requirements, etc.

Architecture of Computing Systems - ARCS 2010

Architecture of Computing Systems - ARCS 2010 PDF Author: Christian Müller-Schloer
Publisher: Springer Science & Business Media
ISBN: 3642119492
Category : Computers
Languages : en
Pages : 258

Get Book Here

Book Description
This book constitutes the refereed proceedings of the 23rd International Conference on Architecture of Computing Systems, ARCS 2010, held in Hannover, Germany, in February 2010. The 20 revised full papers presented together with 1 keynote lecture were carefully reviewed and selected from 55 submissions. This year's special focus is set on heterogeneous systems. The papers are organized in topical sections on processor design, embedded systems, organic computing and self-organization, processor design and transactional memory, energy management in distributed environments and ad-hoc grids, performance modeling and benchmarking, as well as accelerators and GPUs.

Resilience Assessment and Evaluation of Computing Systems

Resilience Assessment and Evaluation of Computing Systems PDF Author: Katinka Wolter
Publisher: Springer Science & Business Media
ISBN: 3642290329
Category : Computers
Languages : en
Pages : 485

Get Book Here

Book Description
The resilience of computing systems includes their dependability as well as their fault tolerance and security. It defines the ability of a computing system to perform properly in the presence of various kinds of disturbances and to recover from any service degradation. These properties are immensely important in a world where many aspects of our daily life depend on the correct, reliable and secure operation of often large-scale distributed computing systems. Wolter and her co-editors grouped the 20 chapters from leading researchers into seven parts: an introduction and motivating examples, modeling techniques, model-driven prediction, measurement and metrics, testing techniques, case studies, and conclusions. The core is formed by 12 technical papers, which are framed by motivating real-world examples and case studies, thus illustrating the necessity and the application of the presented methods. While the technical chapters are independent of each other and can be read in any order, the reader will benefit more from the case studies if he or she reads them together with the related techniques. The papers combine topics like modeling, benchmarking, testing, performance evaluation, and dependability, and aim at academic and industrial researchers in these areas as well as graduate students and lecturers in related fields. In this volume, they will find a comprehensive overview of the state of the art in a field of continuously growing practical importance.

Predicting Parallel Application Performance Via Machine Learning Approaches

Predicting Parallel Application Performance Via Machine Learning Approaches PDF Author: Karan Singh
Publisher:
ISBN:
Category :
Languages : en
Pages : 74

Get Book Here

Book Description
Consistently growing architectural complexity and machine scales make creating accurate performance models for large-scale applications increasingly challenging. Traditional analytic models are difficult and time-consuming to construct, and are often unable to capture full system and application complexity. To address these challenges, we automatically build models based on execution samples. We use multilayer neural networks, since they can represent arbitrary functions and handle noisy inputs robustly. In this thesis, we focus on two well known parallel applications whose variations in execution times are not well understood: SMG2000, a semicoarsening multigrid solver, and HPL, an open source implementation of LINPACK. We sparsely sample performance data on two radically different platforms across large, multi-dimensional parameter spaces and show that our models based on this data can predict performance within 2% to 7% of actual application runtimes. (Abstract).

Job Scheduling Strategies for Parallel Processing

Job Scheduling Strategies for Parallel Processing PDF Author: Narayan Desai
Publisher: Springer
ISBN: 3319617567
Category : Computers
Languages : en
Pages : 286

Get Book Here

Book Description
This book constitutes the thoroughly refereed post-conference proceedings of the 19th and 20th International Workshop on Job Scheduling Strategies for Parallel Processing, JSSPP 2015 and 2016, held respectively in Hyderabad, India, on May 26, 2015 and in Chicago, IL, USA, on May 27, 2016. The 14 revised full papers presented (7 papers in 2015 and 7 papers in 2016) were carefully reviewed and selected from 28 submissions (14 in 2015 and 14 in 2016). The papers cover the following topics: parallel scheduling raising challenges multiple levels of abstractions; node level parallelism; minimization of energy consumption in task migration within a many-core chip; task replication in real-time scheduling context; data-driven approach to schedule GPU load; the use of lock-free data structures in OS scheduler; the influence between user behaviour (think time, more precisely) and parallel scheduling; Evalix, a predictor for job resource consumption; sophisticated and realistic simulation; space-filling curves leading to better scheduling of large-scale computers; discussion of real-life production experiences.

Performance Prediction and Scheduling for Parallel Applications on Multi-user Clusters

Performance Prediction and Scheduling for Parallel Applications on Multi-user Clusters PDF Author: Jennifer Melinda Schopf
Publisher:
ISBN:
Category :
Languages : en
Pages : 542

Get Book Here

Book Description


Task Scheduling on Parallel Processors

Task Scheduling on Parallel Processors PDF Author: Jaya Prakash Varma Champati
Publisher:
ISBN:
Category :
Languages : en
Pages :

Get Book Here

Book Description
Scheduling tasks/jobs on parallel processors/machines is a classical scheduling problem that is well studied in the literature due to its applicability in parallel computing systems and operations research. Even though it is a well studied problem, new scheduling models that consider the emerging aspects in the continuously evolving parallel computing systems are required to analyze and improve their performance. In this thesis we initially study scheduling on parallel processors under three new semi-online paradigms with motivations from computational offloading systems (e.g. mobile cloud computing, mobile edge computing, hybrid cloud, etc.), where only partial information about the tasks is available. First, we study makespan minimization on a set of local processors and a set of remote processors under the semi-online setting where the task processing times on the local processors are known a priori, but are unknown on the remote processors. Second, considering that each offloaded task incurs a cost, we study makespan-plus-weighted-offloading-cost minimization when the task processing times are not known a priori, but their offloading costs are known. Third, we consider the scenario where offloaded task incurs non-negligible communication overhead and study makespan minimization under the semi-online setting where task communication overheads are known a priori, but their processing times are not known. For each of the above problems we propose efficient algorithms, analyze their performance in the worst case, by deriving competitive ratios, and study their average performance using simulation. Finally, we identity a new job model in scheduling on parallel processors, where a job has placement constraints and multi-processor requirement. Under the job placement constraints we solve a problem of assigning identical jobs to machines. We establish novel results for this problem under generalized objective functions. We propose a new algorithm and analyze its runtime complexity. Further, using benchmark input instances we show that the proposed algorithm has orders of magnitude lower runtime than the existing algorithms.

Towards Resource-aware Computing for Task-based Runtimes and Parallel Architectures

Towards Resource-aware Computing for Task-based Runtimes and Parallel Architectures PDF Author: Dimitrios Chasapis
Publisher:
ISBN:
Category :
Languages : en
Pages : 148

Get Book Here

Book Description
Current large scale systems show increasing power demands, to the point that it has become a huge strain on facilities and budgets. The increasing restrictions in terms of power consumption of High Performance Computing (HPC) systems and data centers have forced hardware vendors to include power capping capabilities in their commodity processors. Power capping opens up new opportunities for applications to directly manage their power behavior at user level. However, constraining power consumption causes the individual sockets of a parallel system to deliver different performance levels under the same power cap, even when they are equally designed, which is an effect caused by manufacturing variability. Modern chips suffer from heterogeneous power consumption due to manufacturing issues, a problem known as manufacturing or process variability. As a result, systems that do not consider such variability caused by manufacturing issues lead to performance degradations and wasted power. In order to avoid such negative impact, users and system administrators must actively counteract any manufacturing variability. In this thesis we show that parallel systems benefit from taking into account the consequences of manufacturing variability, in terms of both performance and energy efficiency. In order to evaluate our work we have also implemented our own task-based version of the PARSEC benchmark suite. This allows to test our methodology using state-of-the-art parallelization techniques and real world workloads. We present two approaches to mitigate manufacturing variability, by power redistribution at runtime level and by power- and variability-aware job scheduling at system-wide level. A parallel runtime system can be used to effectively deal with this new kind of performance heterogeneity by compensating the uneven effects of power capping. In the context of a NUMA node composed of several multi core sockets, our system is able to optimize the energy and concurrency levels assigned to each socket to maximize performance. Applied transparently within the parallel runtime system, it does not require any programmer interaction like changing the application source code or manually reconfiguring the parallel system. We compare our novel runtime analysis with an offline approach and demonstrate that it can achieve equal performance at a fraction of the cost. The next approach presented in this theis, we show that it is possible to predict the impact of this variability on specific applications by using variability-aware power prediction models. Based on these power models, we propose two job scheduling policies that consider the effects of manufacturing variability for each application and that ensures that power consumption stays under a system wide power budget. We evaluate our policies under different power budgets and traffic scenarios, consisting of both single- and multi-node parallel applications.