scheduling multisource

23
Scheduling Multisource Divisible Loads on Arbitrary Networks Jingxi Jia, Bharadwaj Veeravalli, Senior Member, IEEE, and Jon Weissman, Senior Member, IEEE Abstract—Scheduling multisource divisible loads is a challenging task as different sources should cooperate and share their computing power with others to balance their loads and minimize total computatio nal time. In this study, we attempt to address a generalized divisible load scheduling problem for handling loads from multiple s ources on arbitrary networks. This problem is all the more challenging as 1) the topology is arbitrary, 2) in such networks, it is dif ficult to decide from which source and which route a processing node should receive loads, and 3) processing nodes must be allocated to different sources when they become available. We study two distinct cases of interest, static case and dynamic case, and propo se two novel strategies, referred to as Static Scheduling Strategy (SSS) and Dynamic Scheduling Strategy (DSS), respectively. B oth strategies work in an iterative fashion. In each iteration, they will use a novel Graph Partitioning (GP) scheme to partition the network such that each source in the network gains a portion of network resources and then these sources cooperate to process their l oads. We analyze the performance of DSS using queuing theory and derive upper bounds on a load’s average waiting time and a sour ce’s average queue length. We use simulation to verify the usefulness and effectiveness of SSS and DSS. Our findings reveal an i nteresting “load insensitive” property of SSS and also verify the theoretical upper bound of average queue length at each source in the dynamic case. Index Terms—Divisible loads, multisource, communication delay, processing time, ar bitrary network. Ç 1 INTRODUCTION DATA-DRIVEN computation is an active area of current research fueled by the immense amount of data. Handling such data/loads on a single workstation can be quite time consuming, and hence people seek solutions in a network-based environment. One category of these loads, where there is no precedence relationship among themselves, is referred to as divisible loads. The divisible load paradigm, originated from Cheng and Robertazzi [1], has been proposed as an effective technique to schedule and process such computationally intensive loads on networks. A formal mathematical framework of this technique was provided by Bharadwaj et al. [2] and the theory was formally referred to as Divisible Load Theory (DLT). DLT explicitly captures the processors computation capacities and link communication delays in the problem formation, and seeks optimal or near-optimal solutions in scheduling and processing the tasks. Since its inception, the DLT paradigm has been applied to many applications including large-scale matrixvector product [3], large-scale database search problems [4], the use of DLT paradigm with clusters of workstations [5], [6], etc. DLT researchers are also incorporating many realistic system constraints into the problem formulation, such as buffer constraints [7], [8], communication start time costs [9], release times of the processors [10], and others. Scheduling divisible loads with multiround algorithms is studied in [11], and the work [12] considers scheduling divisible loads in a resource unaware environment. The works cited above have one common assumption,

Transcript of scheduling multisource

Page 1: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 1/23

Scheduling Multisource Divisible Loadson Arbitrary NetworksJingxi Jia, Bharadwaj Veeravalli, Senior Member, IEEE, and Jon Weissman, SeniorMember, IEEEAbstract—Scheduling multisource divisible loads is a challenging task as differentsources should cooperate and share theircomputing power with others to balance their loads and minimize total computatio

nal time. In this study, we attempt to address ageneralized divisible load scheduling problem for handling loads from multiple sources on arbitrary networks. This problem is all themore challenging as 1) the topology is arbitrary, 2) in such networks, it is difficult to decide from which source and which route aprocessing node should receive loads, and 3) processing nodes must be allocatedto different sources when they become available.We study two distinct cases of interest, static case and dynamic case, and propose two novel strategies, referred to as StaticScheduling Strategy (SSS) and Dynamic Scheduling Strategy (DSS), respectively. Both strategies work in an iterative fashion. In eachiteration, they will use a novel Graph Partitioning (GP) scheme to partition the

network such that each source in the network gains aportion of network resources and then these sources cooperate to process their loads. We analyze the performance of DSS usingqueuing theory and derive upper bounds on a load’s average waiting time and a source’s average queue length. We use simulation toverify the usefulness and effectiveness of SSS and DSS. Our findings reveal an interesting “load insensitive” property of SSS and alsoverify the theoretical upper bound of average queue length at each source in thedynamic case.Index Terms—Divisible loads, multisource, communication delay, processing time, arbitrary network.Ç1 INTRODUCTION

DATA-DRIVEN computation is an active area of currentresearch fueled by the immense amount of data.Handling such data/loads on a single workstation can bequite time consuming, and hence people seek solutions in anetwork-based environment. One category of these loads,where there is no precedence relationship among themselves,is referred to as divisible loads. The divisible loadparadigm, originated from Cheng and Robertazzi [1], hasbeen proposed as an effective technique to schedule andprocess such computationally intensive loads on networks.A formal mathematical framework of this technique wasprovided by Bharadwaj et al. [2] and the theory was formally

referred to as Divisible Load Theory (DLT). DLT explicitlycaptures the processors computation capacities and linkcommunication delays in the problem formation, and seeksoptimal or near-optimal solutions in scheduling and processingthe tasks. Since its inception, the DLT paradigm has beenapplied to many applications including large-scale matrixvectorproduct [3], large-scale database search problems [4],the use of DLT paradigm with clusters of workstations [5],[6], etc. DLT researchers are also incorporating many realisticsystem constraints into the problem formulation, such asbuffer constraints [7], [8], communication start time costs [9],release times of the processors [10], and others. Schedulingdivisible loads with multiround algorithms is studied in [11],

and the work [12] considers scheduling divisible loads in aresource unaware environment.The works cited above have one common assumption,

Page 2: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 2/23

that is, they assume the initial load(s) reside on a singleworkstation. This means there is only one single load originin the network. However, in many real-life applications,loads/data may be generated and produced at manydifferent network locations. In these cases, the data requiresignificant computation which may not be fully available atthe location of the distributed data sources. This applies to

many application domains. Examples include data miningof distributed scientific and medical data, processing andanalysis of sensor-collected data (e.g., detecting patterns incamera images), and high-energy physics (e.g., analyzingLHC data). In these examples, there are multiple loadorigins/sources in the computing networks, and computationmust be harnessed in the network to meet thecomputational demand of the applications.However, designing an efficient multisource schedulingstrategy is more difficult since multiple sources mustcooperate with each other to share the resources. Because ofthis complexity, the multisource scheduling problem has

received much less attention in the literature. Recent works[13], [14] have addressed the multisource scheduling problemon a tree network via linear programming and closedform solutions, respectively. Another work [15] studied thetwo sources scheduling problem on linear networks, and thework [16] consolidates the previous results. However, thoseworks are mainly focused on networks with regulartopologies, and in most cases only two load origins/sourcesare considered. The generalized case, scheduling multisourcedivisible loads on an arbitrary network, has not beenrigorously studied in the DLT literature.520 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 4, APRIL2010

. J. Jia and B. Veeravalli are with the Computer Networks and DistributedSystems Laboratory (CNDS), Department of Electrical and ComputerEngineering, National University of Singapore, Singapore 117576,Singapore. E-mail: {g0500093, elebv}@nus.edu.sg.. J. Weissman is with the University of Minnesota, 4-192 EE/CS Building,200 Union Street SE, Minneapolis, MN 55455-0159.E-mail: [email protected] received 20 Mar. 2008; revised 26 Nov. 2008; accepted 17 Mar.2009; published online 3 Apr. 2009.Recommended for acceptance by R. Eigenmann.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference IEEECS Log Number TPDS-2008-03-0111.Digital Object Identifier no. 10.1109/TPDS.2009.62.1045-9219/10/$26.00   2010 IEEE Published by the IEEE Computer Society1.1 Our Contributions and Scope of the WorkThis paper is first of its kind to address the multisourcedivisible loads scheduling problem on an arbitrary networkin the DLT domain. A similar but different problemof scheduling multiflows on arbitrary networks has beenaddressed using the multicommodity flow model [17], [18].However, multicommodity flow modeling and divisibleload scheduling paradigm have different concerns. Inmulticommodity flow problems, commodities flow froma set of known sources to a set of known sinks via anunderlying network and a major concern is to seek a

maximal flow. So, determining routes that provide maximalflow between sources and sinks is a key concern.However, in the DLT domain, every node is a potential

Page 3: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 3/23

sink and the connotation of “sink” as a special kind ofnode is not found in the DLT problem formulation. Thus, aload fraction is allowed to be processed anywhere in thesystem. Also note that DLT provides a discrete, finegrained control of the system, such as timing control (i.e.,when a processor should send a load fraction to anotherprocessor, based on delays), while this is not the main

concern with the multicommodity flow problem.The scope of this paper is to design and analyzemultisource divisible load scheduling strategies on arbitrarynetworks within the DLT domain. We consider twodifferent cases of interest, the static case and the dynamiccase. In the static case, we assume that no new loads willarrive to the system, while in the dynamic case, new loadsmay arrive as the time progresses. Since a processing nodemay be connected to multiple sources and may havemultiple routes to a source, a fundamental issue is fromwhich source(s) and which route(s) a processing nodeshould receive its loads. This poses considerable challenges

on designing effective strategies.To address this issue, we propose a novel Graph Partitioning(GP) scheme. GP partitions the network into severaltotally disjoint regions, which solves the “from which source”issue, and also generates a shortest path spanning tree (SPST)for each region, which solves the “from which route” issue.We propose two novel strategies, which are referred to asStatic Scheduling Strategy (SSS) and Dynamic SchedulingStrategy (DSS), one for each case. Both strategies use GP topartition the network, and balance the loads in an iterativefashion. We study the performance of our strategies bothanalytically and through simulation. In our study, SSS hasexhibited an interesting “load insensitive” property, which

will be discussed in Section 6. For DSS, we apply queuingtheory to analyze the dynamical nature of DSS. Wederive theupper bound of average load waiting time and average queuelength, and verify the upper bound through simulation.The paper is organized as follows: In Section 2, weintroduce the network model and the problem formulation.In Section 3, we present how GP works, and describe SSS. Wepresent the DSS in Section 4. In Section 5, we analyze DSSusing queuing theory. Simulation results and discussions arein Section 6. Finally, we conclude the paper in Section 7.2 NETWORK MODEL, ASSUMPTIONS AND PROBLEMFORMULATIONIn this section, we describe the network model andpresent the problem we address. We consider an arbitraryconnected network comprising a total of m source nodes,to which users submit loads for processing. These sourcenodes (or simply “sources”) will share the loads eitherwith the entire network or a portion of the network. Wedenote them as S0; S1; . . . ; Sm 1. Besides the sources, weassume that there are n processing nodes in the network.These processing nodes can receive loads from any source,and we denote them as Pm; Pmþ1; . . . ; Pmþn 1.We make the following assumptions in our formulation.First, both sources and processing nodes are allowed toparticipate in the computation process, and processing

nodes can perform routing functions. Each source orprocessing node is equipped with a front-end processorwhich off-loads communication tasks of that processor. This

Page 4: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 4/23

enables the computation and communication to be carriedout concurrently [19]. However, we assume that no node isequipped with multiple separate ports for communication,and therefore simultaneously transmitting or receiving isnot allowed. We also assume that sources can shareinformation with each other through messages, and weneglect any overheads incurred by transmitting such short

messages. Further, a linear cost model for communicationand computation is adopted as in the literature. Therefore,communication delay and computation time is assumed tobe linearly related to the load size.Problem Statement: Given an arbitrary graph G ¼ <V ;E>,with V ¼ m þ n, where m equals the number of sources and nequals the number of processing nodes, how do we schedule andprocess loads submitted by the source nodes in the system such thatthe total processing time is minimized.We consider two distinct cases of interest—the static caseand the dynamic case. For the static case, we assume that inthe network there are m divisible loads L0; L1; . . . ; Lm 1

residing on m sources, respectively. We assume that noadditional loads will arrive. For the dynamic case, weassume that each source has an independent load inflow.Therefore, new loads may be expected to arrive at any pointin time and the network should accommodate the newarrivals dynamically.2.1 Problem FormulationTwo different approaches [16] are possible to tackle thisproblem. One is based on “superposition,” wherein all orpart of the processing nodes will receive multiple fractionsof loads from different sources and the total load that eachprocessing node received will be balanced according to itscomputation capacity. The other approach is referred to as

“network partitioning,” wherein the entire network will bepartitioned into several nonoverlapping regions centered ateach source, respectively, and each source will onlydispatch its load to its own region. Both techniques haveadvantages and disadvantages. Under “network partitioning,”since the entire network is partitioned into nonoverlappingregions, each source can carry out load dispatchingseparately without interfering with each other. However,the challenge lies in partitioning the network into regionswhere each region’s equivalent computation power (definedin [2]) is exactly proportional to this region’s load size.In most cases, we cannot strike a perfect balance across thenetwork. On the other hand, under the “superposition”technique, each processing node can receive loads fromJIA ET AL.: SCHEDULING MULTISOURCE DIVISIBLE LOADS ON ARBITRARY NETWORKS 521several sources, and hence it is easier to balance the loadacross the network. However, because of the communicationcontention problems, exercising control of “superposition”is much more complicated than “networkpartitioning,” and may induce large overheads.In the divisible load context, all load fractions arehomogenous, and a node that receives multiple fractions ofload from different sources can receive a single fraction ofload, which equals the summation of the multiple fractions,from the “nearest” source. Therefore, we adopt “network

partitioning” technique1 to schedule and process the loads.However, as mentioned above, designing an efficientstrategy to partition the graph into several regions such that

Page 5: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 5/23

each region’s optimal equivalent computation power isproportional to the region’s load size is very difficult. Thereason is that one must first solve a (equivalent) subproblem:Given a region, how do we identify this region’s optimalequivalent computation power? It has been shown in the DLTliterature that the optimal solution of scheduling divisibleloads on an arbitrary graph occurs on a spanning tree of the

graph. Thus, to identify a region’s optimal equivalentcomputation power, we must find the best/optimal spanningtree first. Unfortunately, finding the best/optimalspanning tree for divisible load distribution on a graph isproven to be NP-hard in [20].Therefore, in this paper, we will demonstrate that ourproposed GP works efficiently in the sense that it partitionsthe network into several regions and generates an SPST foreach region simultaneously. Our two algorithms, SSS for thestatic case and DSS for the dynamic case, will use GP topartition the network and then schedule the loads.3 STATIC SCHEDULING STRATEGY

Before we introduce SSS, we will first illustrate how GPworks. For the ease of presentation, we define an orderedcommunication delay two-tuple ðCki; iÞ which captures thecumulative communication delay from processing node Pkto source Si. As there are m sources in the network, eachprocessing node has m two-tuples. We can define theirrelations as follows: When Cki > Ckj; ðCki; iÞ > ðCkj; jÞ.When Cki ¼ Ckj, then ðCki; iÞ > ðCkj; jÞ, iff i > j. Since eachsource has a unique subscript, according to our definition,each processing node can locate a unique source which hassmallest two-tuple (i.e., smallest cumulative communicationdelay). We denote this source as target source to thecorresponding processing node. Further, we also define  ij

as the shortest path (in term of communication delays) fromSi (or Pi) to Sj (or Pj).Graph partitioning scheme. In our approach, the givengraph is divided into m regions Region0; Region1; . . .Regionm 1, centered at S0; S1; . . . ; Sm 1, respectively. Anarbitrary processing node Pi is attached to its target sourceby the shortest path (path with smallest communicationdelay). We observe that GP intuitively uses each processingnode effectively. This is because what determines the realcomputation capacity of a node in a network is not onlythe computation speed of this processor, but also itscommunication delay to the source. In GP, all theprocessing nodes are attached to their target sources bythe shortest path and, hence, from processing nodes’perspective they have been used efficiently. We definethe following.Totally disjoint regions: Totally disjoint regions mean thatany two regions have 1) no common node, 2) no commonlink, and 3) no intersection. Notice that 1) and 2) do notimply 3). Even without common nodes and links, tworegions may still intersect with each other. For example,suppose Px belongs to Regioni, and Py belongs to Regionj,respectively. However, Py may be connected to Sj throughPx (i.e., Px provides routing service for Regionj), so Regioniand Regionj still intersect with each other. Thus, for two

regions to be totally separable/disjoint, they must satisfy 1),2), and 3) simultaneously. Now we state the following.Theorem 1. Using GP the graph is divided into m totally

Page 6: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 6/23

disjoint regions.Proof. In order to realize the proof we proceed as follows:We realize that 1) is immediately apparent, since everyprocessing node has a unique smallest ordered communicationdelay two-tuple. However, to complete theproof including 2) and 3), we need to prove the followinglemma first. tu

Lemma 1. Suppose Pi is attached to Sj, and  ij is the shortestpath (with respect to communication delay) from Pi to Sj.Then, all the processing nodes belonging to  ij are alsoattached to Sj.Proof. The proof is by contradiction. Suppose one processingnode Pk belongs to  ij and is not attached to Sj, but isattached to another source Sx. Thus, according to GP, forPk, we have ðCkj; jÞ > ðCkx; xÞ. Notice that the path fromPx to Pi has a constant communication delay, denoted asC xi . Then, for Pi, we have ðCkj þ C xi; iÞ > ðCkx þ C xi; xÞ,i.e., ðCij; jÞ > ðCix; xÞ. This means that Pi should also beattached to Sx, which contradicts our assumption. Therefore,

Lemma 1 is proved.Next, we use Lemma 1 to complete the proof ofseparability of the regions including 2) and 3) of Theorem1. According to GP, each processing node is attached to itstarget source by the shortest path. Suppose two paths  1and  2, which belong to two different regions Regioni andRegionj, respectively, intersect with each other at Pk.Then, from Lemma 1 we know Pk belongs to Regioni andalso Regionj, which is impossible. Therefore, any twopaths belonging to two different regions have nointersection, and hence any two regions have no intersectionor common links. Hence, the proof. tuFrom the above proof, we know that by using GP, the

graph can be divided into m disjoint regions. Further, sincein GP all processing nodes in the same region are attachedto the corresponding source by the shortest path, weautomatically generate one SPST for each region. This is avery useful characteristic of GP, since the optimal solutionof scheduling divisible load for an arbitrary connectedgraph occurs on a spanning tree of the graph. In ourcontext, after applying GP, each source can directlydispatch load to its SPST, using a similar RAOLD-OS522 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 4, APRIL20101. Since in our problem context the network has an arbitrary graphtopology, “network partitioning” is actually “graph partitioning.”strategy [21]. Therefore, GP actually performs two taskstogether. It effectively divides the graph into m disjointregions and at the same time it generates one SPST for eachregion. We use the shortest path for constructing a spanningtree because each processing node’s communication delayis guaranteed to be a minimum. Thus, compared to otherwell-known spanning trees, such as shortest hop spanningtree, minimum spanning tree [21], and robust spanning tree[22], SPST usually admits better performance.Now we will introduce how SSS works. SSS progressesin an iterative fashion. At the beginning of the first iteration,SSS will apply GP to partition the graph. After the network

is partitioned into m totally disjoint regions, each sourcewill compute the “equivalent computation power” for itsown region based on the SPST and this process of obtaining

Page 7: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 7/23

an equivalent computation power is described in [2]. Noticethat since we do not take into account each source’s loadsize when we partition the network, each region’s “equivalentcomputation power” is not proportional to this region’sload size. We may expect that regions will completeprocessing their respective loads at different time instants.Therefore, in the first iteration, to balance the computation

power across all the regions, the amount of load that will beconsumed for processing by a region will be alteredproportionally. Suppose when each source dispatches andprocesses its load only on its own region, the finish time ofL0; L1; . . . ; Lm 1 are T0; T1; . . . ; Tm 1, respectively, and supposei ¼ argminfTjg, i.e., Regioni has the smallest finishtime. To achieve balance, any region other than Regioni, sayRegionj, will only consume LjTi=Tj amount of load in thefirst iteration, using a similar RAOLD-OS strategy.In the first iteration, the whole Li is consumed byRegioni, and hence no load remains in Si. However, othersources will have some amount of load remaining, and the

amount of load L0j remaining with source node Sj isL0j ¼ Lj  Tj   TiTj: ð1ÞTherefore, the second iteration will start with m   1remaining loads L00; . . .L0i 1; L0iþ1; . . . ; L0m 1 residing on m  

1 sources S0; . . . Si 1; Siþ1; . . . ; Sm 1, respectively. Then, SSSwill apply GP again to partition the graph into (m   1)regions. Notice that this process actually is a reallocation ofprocessing nodes, which originally belong to Regioni, toother regions. Those processing nodes which belong to aregion other than Regioni remain in that region. As in thefirst iteration, the region with the smallest finish time willconsume the whole remaining load, while other regions willonly consume a proportional amount of load, and hence thethird iteration will start with (m   2) sources and remainingloads. Obviously, SSS will come to a halt after m iterations.Further, as long as a region is busy, its equivalentcomputation power will not decrease. Thus, in SSS, theprocessing of load Li will complete within Ti. The totalprocessing time Tsss of the entire network, defined as timedifference between the start time and the time instant whenthe last remaining load has been processed, isTsss   maxfTi; i ¼ 0; 1; . . .;m   1g: ð2ÞWe observe two issues here. First, in SSS, within eachiteration, “network partitioning” technique is used todispatch and process the loads. However, when we lookat the entire process, a processing node may receive loadsfrom different sources, and hence SSS also has an “superposition”characteristic. Therefore, SSS can be viewed ashaving a “hybrid” property.

Second, when implementing GP, it can either be thesources that can initiate the processing or the processingnodes.2 In a source initiating scheme, each source will

Page 8: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 8/23

construct a shortest path spanning tree simultaneously,using Dijkstra’s Algorithm or the Bellman-Ford Algorithm[23]. Then, all the sources share information with each other,and hence each source can identify the processing nodeswhich have the smallest communication delay to itself. Onthe other hand, if processing nodes initiate the algorithm,each processing node will simultaneously compute its

shortest path weight (communication delay) to each sourceusing Dijkstra’s Algorithm or Bellman-Ford Algorithm, andthen choose the target source and report the shortest route tothe target source. To reduce redundant computation,initially, each processing node can maintain a list of shortestpaths and their weights to each source. Then, as long as asource completes its load, its processing nodes (nodes withinits region) can quickly identify the next source it should beattached to, and hence reduce overheads.4 DYNAMIC SCHEDULING STRATEGYNow we tackle a more realistic situation wherein each nodeis more independent in its operation and each source has an

independent and dynamic load inflow. To accommodatethe newly arrived loads, we attempt to extend SSS. In thisDSS, at the beginning of each iteration, each source willcheck which sources in the network currently have loads tobe processed. This can be done by exchanging messagesamong the sources. Then, sources having loads to process,will apply GP to partition the network. In a manner similarto SSS, the region with the smallest finishing time willconsume the entire load, while other regions will onlyconsume a proportional amount of load. After the currentiteration, the sources will repeat the above process for everyload that arrives to the system.There are two major concerns here. First, a newly arrived

load at Si will be stored in the buffer until all previous loadsin Si have been processed. Second, unlike in SSS, whereeach active region’s “equivalent computation power” willonly increase, in DSS, it may also decrease. This is because anew load may arrive at a previously idle source, and thissource will reclaim the resource which initially belongs toits region at the beginning of the next iteration. Therefore,the “equivalent computation power” of a currently activeregion fluctuates as the time progresses.Although in DSS each region’s “equivalent computationpower” fluctuates, we can still attempt to derive the upperbound of processing time of a given load.3 When all sources inthe network are busy, each region will occupy certain“domains” in the network. We refer to such domains as theJIA ET AL.: SCHEDULING MULTISOURCE DIVISIBLE LOADS ON ARBITRARY NETWORKS 5232. In the literature, these are commonly referred to as sender initiatedand receiver initiated approaches.3. Time difference between the instant at which the load is scheduled bythe source and the time instant at which the load has been completed.“critical domains” to the corresponding regions. Notice that aregion’s “critical domain” is composed of all the processingnodes which have smaller communication delay to thisregion’s source than any other sources. For a certain source,its “critical domain” will always be attached to it, as long asthis source is busy. We denote the “equivalent computation

power” of Regioni’s “critical domain” as Eci . Further, sincewe adopt a linear cost model, the processing time of a load is

Page 9: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 9/23

linearly related to the load size. Therefore, suppose the loadLi at Si is processed with k installments L0i; L1i; . . . ; Lk 1i , andthe average computation power is E i, we haveTðE i;LiÞ ¼ T

   Ei;L0iþ L1iþ     þLk 1i

 ¼ T

   Ei;L0i þ T

 

  Ei;L1i þ     þT

 E i;Lk 1i

   T Eci; L0i

 þ T

 Eci; L1i

 þ     þT

 Eci; Lk 1i

 ¼ T

 Eci; Li

 ¼ EciLi;ð3Þwhere TðE;LiÞ denotes the processing time of load Li withcomputation power E.Notice that (3) gives an upper bound of one load’sprocessing time. However, a load may not be able to beprocessed immediately when it arrives, and hence theactual time the load spends in the network may be longer.Further, since a newly arrived load will be stored in the

buffer until its previous loads have been processed, eachsource should have adequate buffer space to hold newarrival loads. Therefore, it will be more appropriate if we

Page 10: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 10/23

perform queuing analysis for understanding the performanceof DSS in the next section.5 ANALYSIS OF DSSSuppose each source has independent Poisson arrival loads,and the arrival rate at Si is  i. Further, we assume that theload size is exponentially distributed with parameter  ciEc

i .Notice that when a region has fixed computation power, theprocessing time of the loads is also exponentially distributed.Therefore, when all regions are busy (and thus eachregion is processing its load within its critical domain only),we can map each region to a M/M/1 queue [24], and theservice rate for Regioni is  ci, as shown in Fig. 1a.However, in a dynamic situation, the service rate for eachregion is not constant. At any time instant, several regionsmay become idle and their computation power will bereallocated to other regions. For instance, when Region0 is

idle while other regions are busy, the network model isshown in Fig. 1b. Notice that the arrival rate   is the same forthe above two cases, but  i0 ¼ E0iEci

 ci, where Eci denotes theequivalent computation power of Regioni’s critical domainand E0idenotes Regioni’s equivalent computation powerswhen Region0 is idle. Actually, there are 2m different cases,where m is the number of sources. In all cases, for a given

region, arrival rates remain the same, but service rates aredifferent. Notice that among all cases, when Si occupies theentire network (i.e., when all other regions are idle), Regioniwill have the maximum service rate. We denote themaximum service rate for Regioni as  maxi .Now, we consider the entire network as a system with minflows of loads and the system will process these loads at acertain rate. However, if the aggregated load inflow rateexceeds the service rate of the entire system, then systembecomes unstable, and the number of loads left in thesystem will increase to infinity as the time progresses.Therefore, the key question to address is as follows: “Given anetwork, if we know the load arrival rate as well as the load sizedistribution at each source (i.e.,  i and each region’s service ratesin different cases are known), how can we decide whether thisnetwork can manage these loads or not, and what is the averagequeue length at each source and the average waiting time of aload?” To address these questions, we will analyze ournetwork for three important cases.Case 1. 8i;  i <  ci. This is considered as a stable casewherein arrival rates are less than the processing rates,which implies that each source can easily manage its ownloads using its critical domain only.

According to DSS, an idle source node Si will release itscomputation capacity. Any load arriving during Si’s idletime will wait for a certain amount of time until Si regains its

Page 11: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 11/23

computation capacity, and then Si will start to dispatch andprocess the load. Therefore, we can map Regioni to a M/G/1queue with vacations4 [24]. Let  i denote the distribution ofservice time at Regioni, and  i denotes the distribution ofRegioni’s vacation time. Then, average waiting time of loadsat Si’s buffer (denoted as Twi ) is given by

Twi ¼

 iE  2i

 2ð1    iE½ i ÞþE

  2

i 2E½ i : ð4ÞHowever, in our context, each region’s service rate andvacation time are coupled with other regions in the network,and hence it is more appropriate to view the entire network asmcoupled M/G/1 queues with vacations. In this case, it maybe noted that determining the exact value of Twi is verydifficult. To see this, consider the simplest case where thereare only two regions (Region0 and Region1) in the network. Tocompute E½ i ; E½ 2

i  ; E½ i , and E½ 2i   (i ¼ 0; 1) in (4), oneneeds to know the probability when Region0 is busy whileRegion1 is idle, the probability when Region0 is idle whileRegion1 is busy, the probability when both regions are busy,and the probability when both regions are idle. This requiresus to solve an infinite three-dimensional Markov Chain, asshown in Fig. 2. In the figure, state (ij) denotes i loads in S0and j loads in S1, while both S0 and S1 are busy. State (i0j)(or(ij0)) denotes that there are i loads inS0 and j loads inS1, whileS0 is idle(or busy) and S1 is busy(or idle).524 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 4, APRIL2010Fig. 1. Network models. (a) Network model when all regions are busy.(b) Network model when only Region0 is idle.4. When all other regions are idle, the vacation time can be viewed asarbitrarily small.The Markov Chain shown in Fig. 2 is very complicated tosolve. Further, the complexity of the problem increasesdramatically as the number of sources increases and makesit complex to derive an exact value of Twi . Thus, in thispaper, we will attempt to derive the upper bound on Twi . Inthe derivation, we will use an important property of the

exponential distribution—the combination property [24],which is stated as follows:Theorem 2. Random variables x1; x2; . . . ; xk are exponentially

Page 12: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 12/23

distributed with parameters u1; u2; . . . ; uk. Let random variablesY ¼ minfx1; x2; . . . ; xkg. Then, Y is also exponentiallydistributed with parameter u ¼ u1 þ u2 þ     þuk.Using Theorem 2,wecan identify the distribution of  i andfind the worst case E½ iworst  and E½ 2iworst . Suppose when Sibecomes idle, there are k busy regions in the network.

Because of the memoryless property of the exponentialdistribution [24], all the k regions’ remaining processing timeof their loads are exponentially distributed with parameters

 0;  1; . . . ;  k 1. It may be noted that the Regioni’s vacationtime is the minimum remaining processing time among the kbusy regions. According to Theorem 2, we know that theRegioni’s vacation time  i is also exponentially distributed,with parameter   ¼  0 þ  1 þ     þ k 1. Notice that as kbecomes smaller (i.e., less regions are active),   also becomessmaller. Therefore, when only the region with smallest  maxjis active, Regioni’s vacation time distribution has the smallest

value   ¼  maxj ¼ minf max0 ;  max1 ; . . . ;  maxi 1 ;  maxiþ1 . . . ;  maxm 1g.In this case, Regioni has the largest average vacation time,and hence loads at Si have largest waiting time in the buffer.We haveE½ iworst  ¼1

 max

j; ð5ÞE½ 2iworst  ¼2ð maxj Þ2 : ð6ÞFurther, we notice that as long as Regioni is busy, its servicerate is larger than or equal to  ci. Since the loads waitingtime is inversely related to the Regioni’s service rate, theupper bound of Twi isTwi ¼

 iE½ 2i  2ð1    iE½ i ÞþE½ 2i  2E½ i 

  i= ci ci

   iþ1

Page 13: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 13/23

 maxj: ð7ÞThen, applying Little’s Theorem [25], we can derive theaverage number of loads in the Si’s buffer (denoted asNumavei ), which is

Numavei ¼  iTwi    i

 i= ci ci   iþ1

 maxj!: ð8Þ

Since load size at Si is exponentially distributed with aparameter  ciEci , the average load size is given by 1

 ciEci.Thus, the average queue length at Si (denoted as Qavei ) isbounded byQavei ¼ Numave

i =Eci  ci

   i i= ci ci   iþ1

 maxj! Eci

 ci

: ð9ÞEquation (9) gives us considerable hints on how muchbuffer should be assigned to each source when designingthe system. To reduce the probability of dropping loadswhen the buffer is full, one should assign a larger buffersize than Qavei derived from (9) (for example, two timeslarger than Qavei ), to Si. However, since we have adoptedsome approximations to derive (9), in some cases Qaveimay not give a tight estimation on real actual queue

length. This behavior is carefully studied and discussed inthe next section.Case 2. 8i;  i    ci

Page 14: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 14/23

or 9 i;  i >  maxi . In this case, thenetwork cannot manage these loads and is critically stable.The average queue length of the network and averagewaiting time of loads are expected to grow to infinity, astime progresses. Therefore, in this situation, one mustreduce load arrival rates or discard low priority loads at one

or more of the sources.Case 3. 8i;  i <  maxi and 9i;  i    ciand 9j;  j <  cj. Thiscase is more difficult than the above two cases. In this case,some regions cannot handle their loads by using theircritical domains only, but by “borrowing” computationpower from other regions, these regions may be able tohandle their loads. Thus, the problem is “whether the regionswith excess resources can render enough computation power toother regions.” Obviously, addressing this problem is

extremely complex. For this case, we attempt to study thesimplest two regions case, which reveals some basic issuesof the posed problem.Consider that there are two regions in the network, with

 c0    0 <  max0 and  1 <  c1 <  max1 . Now, the key question isthat whether Region0 can borrow enough computationcapacities from Region1 to accommodate its excess loads.Consider the boundary situation, i.e., Region0 can borrow “justenough” resources from Region1. In this case,  0 ¼    0, where

   0 denotes Region0’s average service rate. From Region1’sperspective, it can be mapped to a M/M/1 queue withvacations, and vacation time is exponentially distributedwith parameter  max0 . Notice that vacation time will not affectJIA ET AL.: SCHEDULING MULTISOURCE DIVISIBLE LOADS ON ARBITRARY NETWORKS 525Fig. 2. Markov chain of two regions case.the idle ratio5 of Region1 (denoted as Ridle1 ), and hence Ridle1 isequal to the idle ratio of a M/M/1 queue with the sameservice rate and arrival rate, but without vacations, which isRidle1 ¼

  c1    1

 = c1: ð10ÞFrom Region0’s viewpoint, it has the maximum service rate

 max0 in Ridle1 ratio of time, and has a service rate of  c0 in the

remaining 1   Ridle1 ratio of time. Hence, the expectation ofits service rate is

Page 15: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 15/23

   0 ¼ max0 ð c1    1Þ

 c1þ

 c0 1

 c1: ð11ÞTherefore, if  0 <    0, this network is able to manage theseloads. Otherwise, this network cannot handle this amountof loads.As in Case 1, one can apply (9) to estimate the upper boundofQave1 (the average queue length at S1), and as  0 approaches

  0 (given by (11)), Qave

1 approaches the upper bound. When 0     0;Qave1 is exactly equal to  1ð 1= c1

 c1  1þ 1

 max0Þ=Ec1

 c1 (as per(9)). For Region0, when  0     0;Qave

0 goes to infinity. When c0 <  0 <    0, though we cannot directly use (9) to calculatethe upper bound of Qave0 , we can use   0 instead of  c0 in (9) toestimate the approximate value of Qave0 .Similarly, when there are more than two regions in thenetwork, we have to compute how much computationpower the regions with excess resource can borrow fromother regions which cannot handle their loads alone.Unfortunately, solving this problem requires solving thesimilar Markov Chain6 as shown in Fig. 2. This remainsan open problem.6 PERFORMANCE EVALUATIONTo characterize the network used for simulation in thissection, we define several network parameters that arewidely used in the DLT literature [2].1. zi: Communication speed parameter. It is the ratio ofthe time taken to transmit a unit amount of datathrough the link li to the time taken by a standard link.2. wi: Computation speed parameter. It is the ratio of thetime taken to compute a unit amount of data by the Si(when i   m   1) or Pi (when i   m) to the time taken

by a standard processing node. A standard processingnode or link can be any processing node or linkthat is referenced in the system.

Page 16: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 16/23

3. Tcm: Communication intensity constant. It equals thetime taken by a standard link to transmit a unit ofthe load.4. Tcp: Computation intensity constant. It equals thetime taken by a standard processing node tocompute a unit of the load.6.1 Performance of SSS

In this section, we will study the performance of the SSS.We compare the performance of SSS with a strategyreferred to as Sequential Dispatching Strategy (SDS).7 SDSworks as follows: Consider a network with m loadsL0; L1; . . . ; Lm 1 residing on m sources S0; S1; . . . ; Sm 1,respectively. In SDS, S0 will first dispatch L0 to the entirenetwork based on an SPST of the network using a similarRAOLD-OS strategy, while other sources temporarily holdtheir loads. Then, after L0 has been processed, S1 willdispatch L1 to the entire network. The above processcontinues until all loads have been processed.As we can see from the above description, SDS is simple in

nature. Further, we notice that if communication delay canbe neglected (when all links in the network are sufficientlyfast), SDS and SSS will have exactly the same performance.Suppose there are m loads in the network, the totalprocessing time Ttotal for both SDS and SSS would beTtotal ¼ ðL0 þ L1 þ     þLm 1Þ   EðwÞTcp; ð12Þwhere EðwÞ is the equivalent computation capacity of theentire network. However, in the presence of communicationdelay, SSS and SDS will show different performances. Weconduct experiments to study how SSS and SDS will react tocommunication delay. Our experiments reveal certaininteresting characteristics of SSS.In our experiments, the network has an arbitrary graph

topology generated randomly with a specified number ofnodes and link connectivity probabilities.8 The computationspeed parameters of sources and processing nodes w isuniformly distributed among ½1; 10 , and both Tcm and Tcpare set to be 1. We simulate different network scenarios(tightly coupled and loosely coupled) by assigning differentdistributions of the communication speed parameters. Weassume that each source in the network has an amount ofload L ¼ 10;000;000. We will show the effect of load size onour strategies later in this section. Further, we neglect thestart-up cost (the time needed to run the graph partitioningscheme and calculate the load distributions), as this cost is aprescheduling and one-time cost only, and negligiblecompared to the real processing time.We first study networks with 20 nodes. To simulate thecharacteristics of a tightly coupled network, z is set tobe uniformly distributed among ½0; 0:5 , and to simulate thecharacteristics of a loosely coupled network, z is set to beuniformly distributed among ½1; 2 . We vary the number ofsource nodes9 in the network from 1 to 10, and thecorresponding total processing time of SSS and SDS isshown in Figs. 3a and 3b. From these figures, we observe thatSSS outperforms SDS, and when the communication delay islarge, SSS gains a significant speedup against SDS. This isexpected since in the presence of communication delays, SSS

utilizes the computation power of sources and processingnodes much more efficiently than SDS.Further, we notice that the total processing time of SDS is

Page 17: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 17/23

approximately linearly related to the number of sources inboth loosely coupled networks and tightly coupled networks,as shown in Figs. 3a and 3b. SSS also exhibits the similar linear526 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 4, APRIL20105. Idle ratio is defined as ratio of the time when the region is idle.6. Similarly, the complexity of the Markov Chain increases dramatically

as number of regions grows.7. As of this date, there are no multijob strategies for scheduling divisibleloads on arbitrary graphs in the literature.8. In our experiments, the link probability of a direct link between a pairof nodes is set to 0.4.9. Each time new source nodes are randomly generated, while previoussource nodes are retained.relationship in tightly coupled networks. However, SSSshows a very interesting characteristic in loosely couplednetworks. As shown in Fig. 3b, provided the number ofsources is smaller than some threshold, increasing thenumber of sources (i.e., increasing the number of loads in

the network) does not affect the total processing timesignificantly. Actually, as the number of sources increasesfrom 1 to 7 (i.e., total amount of loads increases by600 percent), the total processing time of SDS increases by662 percent (2:1 106-1:6 107) and 418 percent (1:1 107-5:7 107) in tightly coupled networks and loosely couplednetworks, respectively. In the same case, the total processingtime of SSS also increases by 471 percent (2:1 106- 1:2 107)in the tightly coupled networks, but it increases only by45 percent (1:1 107-1:6 107) in the loosely coupled networks.We refer to the above SSS’ characteristic as the “loadinsensitive” property because the total processing time of SSSseems “insensitive” to the increase of number of loads. Notice

that this property can only be observed in a relatively looselycoupled network.The above load insensitive property can be explained bya “Nearest Nodes Dominance” effect, which is stated asfollows: In the presence of communication delays, for a givenregion, the source and its “nearest” nodes dominate this region’scomputation capacity. Here, “nearest” is in terms of smallcommunication delay. This is because in our strategy theload will be scheduled according to nodes’ computationspeeds and communication delays to the source. In suchscheduling, the “farthest” nodes (i.e., have largest communicationdelays) tend to receive fewer amount of load, whilethe nearer nodes tend to receive larger amount of load. If afarther node is deprived from a region, only a small amountof excess load needs to be shared by the rest nodes. Thus, theregion’s computation capacity is less affected. On the otherhand, if a nearer node is deprived from the region, a largeamount of excess load needs to be processed, and hence theregion’s computation capacity will decrease significantly.Now, let us see why SSS exhibits the load insensitiveproperty. The total processing time of SSS is the maximumfinish time of all loads, and its upper bound is shown in theInequality (2), where the Tis are determined by the respectivecritical domains’ computation power. Notice that when thesources are sparse and communication delay is relatively

large, each source’s critical domain contains almost all itsJIA ET AL.: SCHEDULING MULTISOURCE DIVISIBLE LOADS ON ARBITRARY NETWORKS 527Fig. 3. Experiment results for the static case. (a) Tightly coupled network with

Page 18: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 18/23

20 nodes. (b) Loosely coupled network with 20 nodes. (c) Tightlycoupled network with 150 nodes. (d) Loosely coupled network with 150 nodes.“nearest” nodes. Therefore, because of the nearest nodesdominance effect, Ti is very close to the real processing timeof Li. Further, when adding a new source into the network,as long as sources remain sparse, it is highly probable thatthe new source will not deprive other sources’ “nearest”

nodes. Therefore, previous existing critical domains’ computationcapacities will not decrease significantly, and hencethe total processing time is less affected.From the above discussion, we know that there are twoprerequisites for SSS to exhibit the load insensitive property.First, the communication delay of the network should berelatively large. This explains why in the tightly couplednetwork, the total processing time of SSS increases linearlywith the number of sources, as shown in Fig. 3a. Second, thesources in the network should be sparse enough, i.e.,geographically well distributed. Whenthe number of sourcesexceeds some threshold, we should observe a sharp increase

in the total processing time as the number of sources increasesfurther. As shown in Fig. 3b, when the number of sourcesincreases from 7 to 10, the total processing time increases from1:6 107 to 2:4 107, almost triple the increment as comparedto when the number of sources increases from 1 to 4 orfrom 4 to 7. However, notice that the threshold could bevaried. For a larger network, SSS should be able to sustain theload insensitive property for a larger number of sources.To verify this, we then conduct another set of experimentson a much larger network with 150 nodes. The networkparameters are the same as previous experiments—w isuniformly distributed among ½1; 10 , and z is uniformlydistributed among ½0; 0:5  for tightly coupled network and

among ½1; 2  for relatively loosely coupled network. Theresults are shown in Figs. 3c and 3d. We observe that for theloosely coupled case the plot of SSS is almost flat, even whenthe number of sources exceeds 7. Actually, as the number ofsources increases from 1 to 20, the total processing time onlyincreases from 0:91 107 to 1:25 107. However, when thenumber of sources increases further to 40, the total processingtime increases disproportionately to 2:3 107.Further, we notice that as the network size grows, thetotal processing time for tightly coupled network decreasessignificantly, but the total processing time for looselycoupled network does not change significantly. ComparingFigs. 3b and 3d, we find that for the single source case, thetotal processing time only decreases from 1:1 107 to0:91 107, as the network size grows from 20 to 150 nodes.This indeed verifies the nearest nodes dominance effect.Finally, it should be noted that since we adopt a linearcost model, the change of the initial load size does not affectthe above observations. Consider the 150 nodes looselycoupled network, we vary each region load size from5,000,000 to 15,000,000, and the total processing time of SSSwith respect to different number of sources are plotted inFig. 4. From the figure, we observe that the total processingtime of SSS increases linearly with the load size.6.2 Performance of DSS

Now, we will study the performance of DSS. Since DSS is anatural extension of SSS, its usefulness and effectiveness areshown in the above section. Therefore, in this section, we

Page 19: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 19/23

mainly focus on the dynamic nature of DSS—the averagequeue length at each source. Notice that as long as we knowthe average queue length, applying Little’s Theorem caneasily yield other performance metrics.We adopt the assumption made in Section 5, that is, thearrival of loads follow a Poisson distribution and load size isexponentially distributed. Further, in our simulation, for any

Regioni, we always let  i <  ci, which corresponds to Case 1in Section 5. It is because the other two cases are either trivial(for Case 2) or too complex (for Case 3). Under the aboveconstraints, an upper bound of each region’s average queuelength is given in (9). Below, we conduct experiments tostudy the actual average queue length of each region.First, we consider networks with symmetric architectureand three sources. Similar to the static case, we generate twotypes of networks—loosely coupled and tightly couplednetworks. In the loosely coupled network, because of thepresence of large communication delays, a region can only

get a small amount of computation power from other idleregions. On the other hand, in the tightly coupled network,since the communication delays are small, a region can getrelatively larger amount of computation power from otheridle regions. The respective equivalent computation powerfor each region in different cases is shown in Table 1.528 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 4, APRIL2010Fig. 4. Total processing time of SSS with different load size and numberof sources.TABLE 1Regions’ Equivalent Computation Capacities for Symmetric NetworksIn our simulation, we let each region’s average load size

  ¼ 3 units, and vary the load arrival rate  . The averagequeue length with respect to different   is plotted in Fig. 5.In the figure, the theoretical bounds are derived by (9).Notice that   denotes the average number of loads arrivingin one unit of time. Since we consider divisible loads whichare large in size, it is reasonable to let   < 1.From Fig. 5, we observe that the average queue lengthincreases with  , which is natural. Further, we notice thatthe actual average queue length of the tightly couplednetwork is much smaller than the theoretical bound.However, as the network’s communication delay becomeslarger, the actual average queue length moves closer to thetheoretical bound. This behavior is captured in Fig. 5a. Theloosely coupled network’s average queue length is quiteclose to the theoretical bound. Therefore, (9) serves as a verygood estimator on average queue length for loosely couplednetworks, but may not give a “tight” estimation for tightlycoupled networks.Next, we consider a more general case—regions havingdifferent computation powers. We generate a network withthree regions, and the regions’ equivalent computationpower in different cases is shown in Table 2, where E0i 0denotes the equivalent computation power for Regioniwhen Region0 is idle, and similar for E1

i 0 and E2i 0.Similarly, we let the average load size to be three units,

Page 20: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 20/23

and run the simulation for different sets of load arrivalrates. Several results are reported in Table 3, where Qtidenotes the theoretical bound of Regioni’s average queuelength derived from (9) and Qaidenotes its actual averagequeue length. From Table 3, we find that Qa2is very close to

Qt2 independent of load arrival rates. This is becauseRegion2 is similar to a loosely coupled network in that itsmain computation power lies within its critical domain, i.e.,it cannot borrow too much extra computation power fromother idle regions. However, as regions are able to gainmore computation capacity from other idle regions, thedifference between Qtiand Qaiincreases. This tendency isshown by Region0 and Region1’s performance. The abovephenomena is also intuitive, as these regions’ actual average

computation capacity is much larger than their criticaldomains’ computation capacity.From the above discussions, we know that (9) can bedirectly used as a reference to assign buffer space toregions which exhibit more “loosely coupled” characteristics.However, for the regions exhibiting more “tightlycoupled” characteristics, one should reduce the valuepredicted by (9) correspondingly, and then use the newvalue as the reference.7 CONCLUSIONSIn this paper, we have addressed the problem of schedulingmultisource divisible loads in arbitrary networks. In thisstudy, we considered a very generic graph/network with

heterogeneous processing nodes and links. To our knowledge,this is the first attempt to consider schedulingmultisource divisible loads on such networks. We hadconsidered each aspect of the problem dimension byanalyzing the effects of several key parameters—networksize (number of nodes/scalability of the network), rate ofarrival of loads, rate of processing of the loads, number ofJIA ET AL.: SCHEDULING MULTISOURCE DIVISIBLE LOADS ON ARBITRARY NETWORKS 529Fig. 5. The average queue length of loosely coupled network and tightlycoupled network with respect to different  . (a) Loosely coupled network.(b) Tightly coupled network.TABLE 2Regions’ Equivalent Computation Capacitiesfor the General CaseTABLE 3Experimental Results for the General Casesources, etc. We believe that this study is a very timelycontribution to the DLT domain, as it represents a generalizationof the problem. One of the key contributions of thisstudy is in the graph partitioning approach and resourcesharing across domains. This introduces the possibility ofdynamic power tapping of idle resources. We also derivedtheoretical bounds on the average buffer length at sourceswhen each source has an independent Poisson arrival loads.We summarize all the contributions below.

We proposed a novel GP scheme. GP solves thefundamental problem of scheduling loads in arbitrarynetworks—that is, from which source and which route a

Page 21: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 21/23

node should receive loads. Further, GP works veryefficiently in the sense that it combines network partitioningand spanning tree generation in a single step. Then, basedon GP, we proposed two novel scheduling strategies—SSSand DSS. SSS applies to the static case where no new loadswill arrive in the network, while DSS to the dynamic casewhere loads arrive randomly. We also studied the dynamic

behavior of DSS using queuing theory, and our analysisrevealed the upper bound of each load’s average waitingtime and each source’s average queue length. Both SSS andDSS have shown a “hybrid” property of superposition andnetwork partitioning, and our simulation has verified theeffectiveness and usefulness of SSS and DSS. Further, thesimulation has revealed a very interesting characteristic ofSSS that in loosely coupled networks, an increasing ofnumber of sources will not affect the total processing timesignificantly when the number of sources is below athreshold. Our simulation also shows that for DSS, thetheoretical bound derived for each source’s average queue

length is very useful to predict the actual average queuelength in loosely coupled networks, but it may not be tightfor tightly coupled networks.An immediate extension to this work is to study thedynamic behavior of tightly coupled networks moreprecisely. Further, a dedicated network is considered inthis paper. One may attempt to incorporate the timevaryingnature of the speeds of links and processors intoproblem formulation, and study the multisource schedulingproblem in a real dynamic environment.REFERENCES[1] Y.C. Cheng and T.G. Robertazzi, “Distributed Computation withCommunication Delays,” IEEE Trans. Aerospace and Electronic

Systems, vol. 24, no. 6, pp. 700-712, Nov. 1988.[2] V. Bharadwaj, D. Ghose, V. Mani, and T.G. Robertazzi, SchedulingDivisible Loads in Parallel and Distributed Systems, CS Press, 1996.[3] S.K. Chan, V. Bharadwaj, and D. Ghose, “Large Matrix-VectorProducts on Distributed Bus Networks with CommunicationDelays Using the Divisible Load Paradigm: Performance Analysisand Simulation,” Math. and Computers in Simulation, vol. 58, pp. 71-79, 2001.[4] J. Blazewicz, M. Drozdowski, and M. Markiewicz, “Divisible TaskScheduling—Concept and Verification,” Parallel Computing,vol. 25, pp. 87-98, Jan. 1999.[5] M. Drozdowski and P. Wolniewicz, “Experiments with SchedulingDivisible Tasks in Clusters of Workstations,” Proc. Euro-Par’00, pp. 311-319, 2000.[6] D. Ghose and H.J. Kim, “Computing BLAS Level-2 Operations onWorkstation Clusters Using the Divisible Load Paradigm,” Math.and Computer Modelling, vol. 41, pp. 49-71, Jan. 2005.[7] M. Drozdowksi and P. Wolniewicz, “Divisible Load Schedulingin Systems with Limited Memory,” Cluster Computing,special issue on divisible load scheduling, vol. 6, no. 1,pp. 19-30, Jan. 2003.[8] M. Drozdowski and P. Wolniewicz, “Performance Limits ofDivisible Load Processing in Systems with Limited CommunicationBuffers,” J. Parallel and Distributed Computing, vol. 64, no. 8,pp. 960-973, 2004.

[9] P. Wolniewicz, “Multi-Installment Divisible Job Processing withCommunication Startup Cost,” Foundations of Computing andDecision Sciences, vol. 27, no. 1, pp. 43-57, 2002.

Page 22: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 22/23

[10] V. Bharadwaj and G. Barlas, “Scheduling Divisible Loads withProcessor Release Times and Finite Size Buffer Capacity Constraints,”Cluster Computing, vol. 6, pp. 63-74, 2003.[11] Y. Yang, K. van der Raadt, and H. Casanova, “MultiroundAlgorithms for Scheduling Divisible Loads,” IEEE Trans.Parallel and Distributed Systems, vol. 16, no. 11, pp. 1092-1102,Nov. 2005.

[12] D. Ghose, H.J. Kim, and T.H. Kim, “Adaptive Divisible LoadScheduling Strategies for Workstation Clusters with UnknownNetwork Resources,” IEEE Trans. Parallel and Distributed Systems,vol. 16, no. 10, pp. 897-907, Oct. 2005.[13] M. Moges and T. Robertazzi, “Grid Scheduling Divisible Loadsfrom Multiple Sources via Linear Programming,” Proc. IASTEDInt’l Conf. Parallel and Distributed Computing and Systems, 2004.[14] M. Moges, T. Robertazzi, and D. Yu, “Divisible Load Schedulingwith Multiple Sources: Closed Form Solutions,” Proc. Conf.Information Sciences and Systems, The Johns Hopkins Univ. Mar.2005.[15] T. Lammie and T. Robertazzi, “A Linear Daisy Chain with Two

Divisible Load Sources,” Proc. Conf. Information Sciences andSystems, The Johns Hopkins Univ., Mar. 2005.[16] T.G. Robertazzi and D. Yu, “Multi-Source Grid Scheduling forDivisible Loads,” Proc. Conf. Information Sciences and Systems,pp. 188-191, Mar. 2006.[17] J.A. Broberg, Z. Liu, C.H. Xia, and L. Zhang, “A MulticommodityFlow Model for Distributed Stream Processing,”ACM SIGMETRICS Performance Evaluation Rev., vol. 34, no. 1,pp. 377-378, 2006.[18] C.H. Xia, J.A. Broberg, Z. Li, and L. Zhang, “Distributed ResourceAllocation in Stream Processing Systems,” Proc. 20th Int’l Symp.Distributed Computing, pp. 489-504, 2006.[19] J.T. Hung and T.G. Robertazzi, “Divisible Load Cut through

Switching in Sequential Tree Networks,” IEEE Trans. Aerospace andElectronic Systems, vol. 40, no. 3, pp. 968-982, July 2004.[20] P. Byrnes and L.A. Miller, “Divisible Load Scheduling inDistributed Computing Environments: Complexity and Algorithms,”Technical Report MN ISYE-TR-06-006, Univ. of Minnesota,Graduate Program in Industrial and Systems Eng., 2006.[21] J. Yao and B. Veeravalli, “Design and Performance Analysis ofDivisible Load Scheduling Strategies on Arbitrary Graphs,”Cluster Computing, vol. 7, no. 2, pp. 841-865, 2004.[22] D. England, B. Veeravalli, and J. Weissman, “A Robust SpanningTree Topology for Data Collection and Dissemination in DistributedEnvironments,” IEEE Trans. Parallel and DistributedSystem, vol. 18, no. 5, pp. 608-620, May 2007.[23] T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein, Introductionto Algorithms, second ed. MIT Press, Sept. 2001.[24] D. Bertsekas and R. Gallager, Data Networks. Prentice-Hall, 1992.[25] J. Little, “A Proof of the Queueing Formula L ¼  W,” OperationsResearch J., vol. 18, pp. 172-174, 1961.Jingxi Jia received the BEng degree in computerscience and engineering from the Universityof Electronic Science and Technology of China.Currently, he is a PhD candidate of electrical andcomputer engineering from the National Universityof Singapore, and he submitted his thesis in2008. His main research interests are in grid

computing, load balancing, and parallel anddistributed systems.530 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 21, NO. 4, APRIL

Page 23: scheduling multisource

8/3/2019 scheduling multisource

http://slidepdf.com/reader/full/scheduling-multisource 23/23

2010Bharadwaj Veeravalli received the BSc degreein physics from Madurai-Kamaraj University,India, in 1987, the master’s degree inelectrical communication engineering from theIndian Institute of Science, Bangalore, India, in1991, and the PhD degree from the Department

of Aerospace Engineering, Indian Instituteof Science, Bangalore, India, in 1994. Hedid his postdoctoral research in the Departmentof Computer Science, Concordia University,Montreal, Canada, in 1996. He is currently with theDepartment of Electrical and Computer Engineering, Communicationsand Information Engineering (CIE) Division, National University ofSingapore, as a tenured associate professor. His mainstreamresearch interests include multiprocessor systems, cluster/grid computing,scheduling in parallel and distributed systems, bioinformaticsand computational biology, and multimedia computing. He is one ofthe earliest researchers in the field of DLT. He has published more

than 100 papers in high-quality international journals and conferencesand contributed 10 book chapters. He had successfully securedseveral externally funded projects. He has coauthored three researchmonographs in the areas of PDS, distributed databases (competitivealgorithms), and networked multimedia systems, in the years 1996,2003, and 2005, respectively. He had guest edited a special issue oncluster/grid computing for IJCA, USA journal in 2004. He is currentlyserving the editorial boards of the IEEE Transactions on Computers,IEEE Transactions on SMC-A, and International Journal of Computersand Applications, US, as an associate editor. He had served asa program committee member and as a session chair in severalinternational conferences. His academic profile, professional activities,mainstream and peripheral research interests, research projects and

collaborations, and most recent list of publications can be found onhttp://cnds.ece.edu.sg/elebv. He is a senior member of the IEEE andthe IEEE Computer Society.Jon Weissman received the BS degree fromCarnegie-Mellon University in 1984, and theMS and PhD degrees from the University ofVirginia in 1989 and 1995, respectively, incomputer science. He is a leading researcherin the area of high-performance distributedcomputing. His involvement dates back to theinfluential Legion project at the University ofVirginia during his PhD. He is currently anassociate professor of computer science at theUniversity of Minnesota where he leads the Distributed ComputingSystems Group. His current research interests are in grid computing,distributed systems, high-performance computing, resource management,reliability, and e-science applications. He works primarily at theboundary between applications and systems. He is a senior member ofthe IEEE and the IEEE Computer Society, and awardee of the USNational Science Foundation (NSF) CAREER Award (1995).. For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.JIA ET AL.: SCHEDULING MULTISOURCE DIVISIBLE LOADS ON ARBITRARY NETWORKS 531