239 research outputs found
An Efficient Scheduling Policy for Load Balancing Model for Computational Grid System
Workload and resource management are two essential functions provided at the service level of the Grid system. To improvement in global throughput need, effective and efficient load balancing are fundamentally important. We also check that what type of scheduling policy is used by that algorithm, because an efficient scheduling policy can utilize the computational resources efficiently by allowing multiple independent jobs to run over a network of heterogeneous clusters. In this paper, a dynamic grid model, as a collection of clusters has been proposed. An efficient scheduling policy is used, and its comparison with the other scheduling policy has been presented
A Network Simulation Tool for Task Scheduling
Distributed computing may be looked at from many points of view. Task scheduling is the viewpoint, where a distributed application can be described as a Directed Acyclic Graph and every node of the graph is executed independently. There are, however, data dependencies and the nodes have to be executed in a specified order. Hence the parallelism of the execution is limited. The scheduling problem is difficult and therefore heuristics are used. However, many inaccuracies are caused by the model used for the system, in which the heuristics are being tested. In this paper we present a tool for simulating the execution of the distributed application on a “real” computer network, and try to tell how the executionis influenced compared to the model
Estimation of Execution Parameters for k-Wave Simulations
Estimation of execution parameters takes centre stage in automatic offloading of complex biomedical workflows to cloud and high performance facilities. Since ordinary users have no or very limited knowledge of the performance characteristics of particular tasks in the workflow, the scheduling system has to have the capabilities to select appropriate amount of compute resources, e.g., compute nodes, GPUs, or processor cores and estimate the execution time and cost.
The presented approach considers a fixed set of executables that can be used to create custom workflows, and collects performance data of successfully computed tasks. Since the workflows may differ in the structure and size of the input data, the execution parameters can only be obtained by searching the performance database and interpolating between similar tasks. This paper shows it is possible to predict the execution time and cost with a high confidence. If the task parameters are found in the performance database, the mean interpolation error stays below 2.29%. If only similar tasks are found, the mean interpolation error may grow up to 15%. Nevertheless, this is still an acceptable error since the cluster performance may vary on order of percent as well
An Approach for Realistically Simulating the Performance of Scientific Applications on High Performance Computing Systems
Scientific applications often contain large, computationally-intensive, and
irregular parallel loops or tasks that exhibit stochastic characteristics.
Applications may suffer from load imbalance during their execution on
high-performance computing (HPC) systems due to such characteristics. Dynamic
loop self-scheduling (DLS) techniques are instrumental in improving the
performance of scientific applications on HPC systems via load balancing.
Selecting a DLS technique that results in the best performance for different
problems and system sizes requires a large number of exploratory experiments. A
theoretical model that can be used to predict the scheduling technique that
yields the best performance for a given problem and system has not yet been
identified. Therefore, simulation is the most appropriate approach for
conducting such exploratory experiments with reasonable costs. This work
devises an approach to realistically simulate computationally-intensive
scientific applications that employ DLS and execute on HPC systems. Several
approaches to represent the application tasks (or loop iterations) are compared
to establish their influence on the simulative application performance. A novel
simulation strategy is introduced, which transforms a native application code
into a simulative code. The native and simulative performance of two
computationally-intensive scientific applications are compared to evaluate the
realism of the proposed simulation approach. The comparison of the performance
characteristics extracted from the native and simulative performance shows that
the proposed simulation approach fully captured most of the performance
characteristics of interest. This work shows and establishes the importance of
simulations that realistically predict the performance of DLS techniques for
different applications and system configurations
Evaluating the Robustness of Resource Allocations Obtained through Performance Modeling with Stochastic Process Algebra
Recent developments in the field of parallel and distributed computing has led to a proliferation of solving large and computationally intensive mathematical, science, or engineering problems, that consist of several parallelizable parts and several non-parallelizable (sequential) parts. In a parallel and distributed computing environment, the performance goal is to optimize the execution of parallelizable parts of an application on concurrent processors. This requires efficient application scheduling and resource allocation for mapping applications to a set of suitable parallel processors such that the overall performance goal is achieved. However, such computational environments are often prone to unpredictable variations in application (problem and algorithm) and system characteristics. Therefore, a robustness study is required to guarantee a desired level of performance. Given an initial workload, a mapping of applications to resources is considered to be robust if that mapping optimizes execution performance and guarantees a desired level of performance in the presence of unpredictable perturbations at runtime. In this research, a stochastic process algebra, Performance Evaluation Process Algebra (PEPA), is used for obtaining resource allocations via a numerical analysis of performance modeling of the parallel execution of applications on parallel computing resources. The PEPA performance model is translated into an underlying mathematical Markov chain model for obtaining performance measures. Further, a robustness analysis of the allocation techniques is performed for finding a robustmapping from a set of initial mapping schemes. The numerical analysis of the performance models have confirmed similarity with the simulation results of earlier research available in existing literature. When compared to direct experiments and simulations, numerical models and the corresponding analyses are easier to reproduce, do not incur any setup or installation costs, do not impose any prerequisites for learning a simulation framework, and are not limited by the complexity of the underlying infrastructure or simulation libraries
- …