The Virtual Data Space is a standard C-library which automatically distributes the work-packets generated by parallel applications across the processing nodes. VDS is a universal system offering loadbalancing-mechanisms for applications which incorporate independent load-items and scheduling algorithms for those which comprise precedence-constraints between their different tasks. This paper presents the concepts of VDS and shows some performance results obtained by synthetic benchmark applications.
We consider the problem of finding a schedule for n-independent identical malleable tasks on p identical processors with minimal completion time. This problem arises while using the branch-and-bound or the divide-and-conquer strategy to solve a problem on a parallel system. If nothing is known about the subproblems, then they are assumed to be identical. We assume that the execution time decreases with the number of processors while the computational work increases. We give an algorithm with execution time exponential in p which computes an optimal schedule. In order to approximate an optimal schedule, we use the concept of phase-by-phase schedules. Here schedules consist of phases in which every job uses the same number of processors. We prove that one can approximate an optimal schedule up to a factor of 5/4 using constant time, and we show that this is optimal. Furthermore, we give an ε-approximation algorithm if the speed-up is optimal up to a constant factor.
The efficiency of a parallel algorithm with input x on P ≥ 1 processors is defined as \\(E(x,P) = \\frac{{T(x,1)}}{{PT(x,P)}}\\) where T(x, P) denotes the time it takes to perform the computation using P processors and T(x, 1) is the sequential execution time. The efficiency of many parallel algorithms decreases when the number of processors increases and the sequential execution time is fixed; likewise, the efficiency increases when the sequential computing time increases and the number of processors is fixed. The term scalability refers to this change of efficiency (Sahni & Thanvantri, 1996). Intuitively, a parallel algorithm is scalable if it stays efficient when the number of processors and the sequential execution time are both increased.
We use computer algebra to expand the Pekeris secular determinant for two-electron atoms symbolically, to produce an explicit polynomial in the energy parameter ε, with coefficients that are polynomials in the nuclear charge Z. Repeated differentiation of the polynomial, followed by a simple transformation, gives a series for ε in decreasing powers of Z. The leading term is linear, consistent with well-known behavior that corresponds to the approximate quadratic dependence of ionization potential on atomic number (Moseley’s law). Evaluating the 12-term series for individual Z gives the roots to a precision of 10 or more digits for Z⩾2. This suggests the use of similar tactics to construct formulas for roots vs atomic, molecular, and variational parameters in other eigenvalue problems, in accordance with the general objectives of gradient theory. Matrix elements can be represented by symbols in the secular determinants, enabling the use of analytical expressions for the molecular integrals in the differentiation of the explicit polynomials. The mathematical and computational techniques include modular arithmetic to handle matrix and polynomial operations, and unrestricted precision arithmetic to overcome severe digital erosion. These are likely to find many further applications in computational chemistry.
Many load balancing algorithms balance the load according to a certain topology. Its choice can significantly influence the performance of the algorithm. We consider a two phase balancing model. The first phase calculates a balancing flow with respect to a topology by applying a diffusion scheme. The second phase migrates the load according to the balancing flow. The cost functions of the phases depend on various properties of the topology; for the first phase these are the maximum node degree and the number of eigenvalues of the network topology, for the second phase these are a small flow volume and a small diameter of the topology. We compare and propose various network topologies with respect to these properties. Experiments on a Cray T3E and on a cluster of PCs confirm our cost functions for both balancing phases.
In this paper, the problem of short-term production plannin g i flexible flow lines is considered. A MIP model formulation of the proportional lot sizing problem for multilevel production processes with alternatively usable mach ines is presented. This model is very general in terms of material routing through the syst em and allocation of items and machines to production stages. By definition of addition al constraints for the parameters a similar model for the proportional lot sizing pro blem in flexible flow lines is derived. For the solution of this model a parallel tabu sea rch lgorithm is presented. We describe the implementation of this algorithm by the aid o f ”Virtual Data Space” (VDS) – a C-library which supports various paradigms of para llel programming and provides sophisticated load balancing methods for irregul ar structured applications. Experimental results measured on a parallel system with up t o 192 Pentium II processors show that the new algorithm is an efficient method to comp ute good solutions for the presented problem, even then if problem instances are co nsidered which are not only toy examples.
Load balancing is a key issue in the development of parallel algorithms with irregular structures. Existing load balancing systems each support only one specific programming paradigm and thus are of limited use. The system VDS presented here allows concurrent use of various paradigms such as fork-join, weighted tasks, and static dags (directed acyclic graphs that are known in advance). The system provides visual performance evaluation tools to facilitate the efficient application of the system. VDS supports various communication interfaces including PVM and MPI. Thus, VDS-applications can be run on architectures ranging from workstation clusters to massively parallel systems.
Two new scheduling algorithms are presented. They are used to iso- late polynomial real roots on massively parallel systems. O ne algorithm sched- ules computations modeled by a pyramid DAG. This is a directed acyclic graph isomorphic to Pascal's triangle. Pyramid DAGs are schedule d so that the com- munication overhead is linear. The other algorithm schedules parallelizable in- dependent tasks that have identical computing time functions in the number of processors. The two algorithms are combined to schedule a tree-search for poly- nomial real roots; the first algorithm schedules the computa tions associated with each node of the tree; the second algorithm schedules the nodes on each level of the tree.
Two new scheduling algorithms are presented. They are used to isolate polynomial real roots on massively parallel systems. One algorithm schedules computations modeled by a pyramid DAG. This is a directed acyclic graph isomorphic to Pascal’s triangle. Pyramid DAGs are scheduled so that the communication overhead is linear. The other algorithm schedules parallelizable independent tasks that have identical computing time functions in the number of processors. The two algorithms are combined to schedule a tree-search for polynomial real roots; the first algorithm schedules the computations associated with each node of the tree; the second algorithm schedules the nodes on each level of the tree.
Heterogeneous parallel computing systems built up by closely connected networks of workstations or personal computers are a cheap alternative to dedicated parallel supercomputer systems. As these systems are widely available in academic and industrial environments it is becoming increasingly popular to use these resources to solve time consuming calculations.In this paper, the question of load balancing on heterogeneous parallel computing systems is addressed. The paper presents a general methodology to transform existing load balancing methods that are used for load balancing on homogeneous parallel computing systems into methods, which tate into account the special characteristics of heterogeneous systems.The here presented strategy is applied to a load balancing algorithm, which has been used for distributed branch & bound applications on homogeneous parallel computing systems. Experiments conducted on a 16-node ATM cluster show that the speedup of the parallel branch & bound application can be increased considerably by the use of a transformed algorithm.
We investigate the problem of mapping dynamically generated tasks onto the processors of an MIMD-system. Our main concern is to construct an algorithm which can be integrated in distributed runtime systems like PVM or MPI. Existing methods are often not adjustable to different architecture- and application-demands. Even if they are, the adjustment has to be done manually via time-consuming experiments. A universally applicable strategy has to adjust its parameters automatically according to hardware- and application-characteristics. We concentrate on bidding-algorithms which check the load of K randomly selected processors before placing a task. The analysis of this method is based on a model which allows predicting the behavior of the scheduler. Especially for a large number n of processes it is possible to show that the scheduling behaviour becomes independent of n. As a result we derive optimal K-values for different classes of application/architecture-characteristics. Furthermore, we investigate values of K which guarantee certain execution-times of the application with a given probability.
Burkhard Monien合作论文数Institut fur Informatik, Universitat Paderborn4