SlideShare ist ein Scribd-Unternehmen logo
1 von 5
Downloaden Sie, um offline zu lesen
ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012



A Framework and Methods for Dynamic Scheduling of
      a Directed Acyclic Graph on Multi-core
                                                  Uma B1, C R Venugopal2
                                            1
                                            Malnad College of engineering, Hassan, India
                                                Email: umaboregowda@gmail.com
                                  2
                                    Sri Jayachamarajendra College of engineering, Mysore, India
                                                   Email: venu713@gmail.com


Abstract—The data flow model is gaining popularity as a                precedence constraints[1].Scheduling methods can be
programming paradigm for multi-core processors. Efficient              broadly classified into static and dynamic methods. Several
scheduling of an application modeled by Directed Acyclic               static task scheduling methods are found in literature[1,3,4].
Graph (DAG) is a key issue when performance is very                    Few drawbacks of static scheduling are a) need to correctly
important. DAG represents computational solutions, in which
                                                                       capture the program behavior as a DAG which is very difficult
the nodes represent tasks to be executed and edges represent
precedence constraints among the tasks. The task scheduling            b) to know the exact weight of every node and edge c) size of
problem in general is a NP-complete problem[2]. Several static         the DAG depends on size of problem being solved, which
scheduling heuristics have been proposed. But the major                grows enormously as problem size is increased d) can be
problem in static list scheduling is the inherent difficulty in        applied to a limited class of problems. Dynamic scheduling
exact estimation of task cost and edge cost in a DAG and also          overcomes these drawbacks, but has the little overhead of
its inability to consider and manage with runtime behavior of          scheduling costs during runtime.
tasks. This underlines the need for dynamic scheduling of a                Although the benefits of dynamic data-driven scheduling
DAG. This paper presents how in general, dynamic scheduling            were discovered in early 80’s, recently they are being
of a DAG can be done. Also proposes 4 simple methods to
                                                                       rediscovered as tools for exploiting the performance of multi-
perform dynamic scheduling of a DAG. These methods have
been simulated and experimented using a representative set             core processors. Our contributions in this paper include
of DAG structured computations from both synthetic and real            a)implemented a simulating framework to experiment dynamic
problems. The proposed dynamic scheduler performance is                scheduling methods b)implemented 4 methods of dynamic
found to be in comparable with that of static scheduling               DAG scheduling c) compared the performance of proposed
methods. The performance comparison of the proposed                    dynamic scheduling methods with static scheduling methods
dynamic scheduling methods is also carried out.                        d) compared the performance of the proposed dynamic
                                                                       scheduling methods and analyzed their performance e)
Keywords: DAG, static scheduling, dynamic scheduling                   generated DAGs of well known linear methods like GE, LU,
                                                                       Laplace & FFT to be used as input to the proposed scheduler.
                          I. INTRODUCTION                              The rest of the paper is organized as follows: In section 2 we
    The recent advancements in VLSI technology has led to              provide the background of task scheduling. Section 3 gives
increase in number of processing units on a single die i.e.            a summary of the work done so far in scheduling. The
multi-core. The trend to increase clock speed has hit a wall           proposed framework for dynamic DAG scheduling is given
due to increased heat dissipation, increased power                     section 4. The kind of inputs tested is indicated in section 5.
requirements and increased leakage current. The existing               The performance of the schedulers is discussed in section 6.
system software is inadequate for this new architecture and            Section 7 concludes the paper and gives future direction of
the existing code base will be incapable of delivering expected        work.
increased performance on this new architecture. They may
not even be capable to harness the full potential of multi-                                   II. BACKGROUND
core processor. Hence the need of new system software to                   In our case, the input to the scheduler is a DAG. A task
exploit the complete power of multi-core.                              can begin its execution only after all its predecessors have
    A computational solution can be represented as a DAG,              completed execution. Static scheduling methods can be
in which the nodes represent code segments to be executed.             further grouped into list scheduling methods, clustering
An edge from node ‘u’ to node ‘v’ indicates that output of             algorithms, guided random search methods and task
code segment at node ‘u’ is an input to code segment at node           duplication based algorithms. List scheduling methods
‘v’. The weight of a node represents the execution                     basically involve 3 steps              – a) prioritizing tasks b)
time(estimated) of the corresponding code segment. The                 assigning tasks to cores based on some criterion c) ordering
weight of edge (u,v) indicates the volume of data to be                the tasks assigned to a core. Unlike static scheduling
communicated from node ‘u’ to node ‘v’. The objective of               methods, dynamic scheduling does not require accurate
scheduling DAG structured computation is to minimize the               information on DAG, rather mapping of tasks to cores takes
execution time by allocating tasks to cores, while preserving          place on-the-fly. Also it can tolerate error in weight estimation
© 2012 ACEEE                                                      37
DOI: 01.IJIT.02.01. 528
ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012


and more fault tolerant.                                                  and the schedulers collaborate with each other to balance
                                                                          the workload. We have made an attempt to adopt the static
                      III. RELATED WORK                                   list scheduling methods to dynamically schedule a DAG.
     The scheduling problem has been extensively studied. A
                                                                           IV. BASIC FRAMEWORK OF DYNAMIC SCHEDULER FOR A DAG
lot of static scheduling methods have been proposed. List
scheduling methods are the generally preferred static                         This section provides the overall view of the proposed 2-
scheduling methods for its low complexity and reasonably                  level dynamic scheduler and its basic working. Also, the
good quality schedules. HLFET[5](Highest Level First with                 different scheduling policies tried at both global and local
Estimated Time) is a simple and low complexity method, which              level are discussed.
uses static level to prioritize tasks and uses earliest start time            The input to our scheduler is a DAG. Scheduling happens
to assign task to cores. ETF[5] (Earliest Time First) selects             at 2 levels – global and local level. The complete information
the best pair of task-core, based on earliest execution start             about all tasks in the DAG is stored in the global scheduler.
time, at each scheduling step. This method generates better               The job of this scheduler is to assign tasks to different cores
schedules, but its time complexity is more. CPOP[1](Critical              and to update the status of related tasks, with an aim to
Path on Processor) underlines the importance of tasks lying               reduce the overall time to complete the execution of DAG.
on critical path, schedules them onto a separate processor,               Ready tasks are the ones, whose predecessors in DAG have
so that all critical tasks are executed at the earliest. The              completed execution and hence they are ready for execution.
MCP(Modified Critical Path) algorithm[13] assigns the                     A local scheduler running on each core, maintains the set of
priority of a task node according to its As Late As Possible              ready tasks assigned to it by the global scheduler. It picks
(ALAP) value. The ALAP of a task node is a measure of how                 the task from the list in some order, so as to maximize
far the node’s start time can be delayed without increasing               scheduling objective and executes it. The completion of a
the schedule length. Qin Zheng [14] have studied to improve               task is informed to the global scheduler. Different Scheduling
the performance of static algorithms when tasks execution                 policies are tried at both global and local level.
times in a DAG are uncertain. The initial schedule, based on
                                                                          Global scheduling policies :
the estimated task execution times, is revised or modified
(adapted) during runtime as necessary when tasks overrun                       Few policies proposed to assign the ready tasks to cores
or under run. The objective is to minimize the response time              are discussed below.
and the number of adaptations. Most list scheduling methods               1. The idea is that if all cores are busy without idling due to
                                                                          non-availability of data or tasks, then the best performance
are non-preemptive. Fast Preemptive scheduling[15] method
                                                                          in terms of reduced makespan and high speedup can be
is more realistic and have lot of potentials. It has lot of
                                                                          expected. One simple way to do this, is balancing the load
flexibility in scheduling as low priority task can be executing
                                                                          across all cores. To achieve this, an estimation of the load on
until a high priority task becomes ready. This leads to better
                                                                          all cores is maintained and the next ready task is assigned to
utilization of resources. Several other methods are proposed
                                                                          the least loaded core at that point of time. This is a simple
based on clustering, look-ahead mechanism and back filling
                                                                          method and yet gives reasonably good schedules.
approaches to schedule an application.
                                                                          2. The drawback of the above load balancing policy is that
     Dongarra et. al. [6] have presented a dynamic task
                                                                          the load may be balanced across the cores, but still the cores
scheduling approach to execute dense linear algebra
                                                                          may be idling, because of waiting for data from other tasks
algorithms on multi-core systems, also have provided
                                                                          executed on different cores. Depending on 1.              t h e
analytical analysis to show why the tiled algorithms are
                                                                          interconnection between the cores, the time required to
scalable. The coarse-grain data flow model is the main
                                                                          transfer data between any two cores varies. This was not
principle behind emerging multi-core programming
                                                                          taken into consideration in the previous policy. Hence to
environments such as Cilk/Cilk++ [9], Intel R Threading
                                                                          reduce this idle time due to the non-availability of data, the
Building Blocks (TBB) [9] and Tasking in OpenMP 3.0 [10].
                                                                          ready task is assigned to a core, on which it will have the
All these frameworks use a very small set of extensions to
                                                                          earliest start time. Thus the policy is to find the best pairing
common programming languages and involve a relatively
                                                                          of task and core, among all ready tasks, so as to reduce the
simple compilation stage but potentially much more complex
                                                                          overall completion time. This method is better than the
runtime system. Cilk[7] developed at MIT uses work-stealing
                                                                          previous one, but its time complexity is more. One drawback
policy to schedule the tasks, but the programmer has to
                                                                          is, it does the best mapping with the information on hand at
explicitly identify parallel tasks using keywords. Laura De
                                                                          that time, but does not look beyond i.e. off springs of the
Giusti et al.[8] have developed a model for automatic mapping
                                                                          ready task, to take much better decision.
of concurrent tasks to processors applying graph analysis
for the relation among tasks, in which processing and                     Local scheduling policies :
communicating times are incorporated. Viktor K. Prasanna et.                  Simple methods used to pick one of the assigned tasks,
al. [11] have implemented a lightweight scheduling method                 at each core are given below.
for DAG structured computations on multi-core processors.                 1. One method is to execute the tasks in the order they are
The scheduling activities are distributed across the cores                assigned to core. Though it is simple, it works out well, mostly
© 2012 ACEEE                                                         38
DOI: 01.IJIT.02.01. 528
ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012


in cases where the number of waiting tasks at each core is               50,100, 300 and 500 nodes.
less in number. This will be the case, when the degree of                2. DAGs of linear algebra methods including Gauss-
parallelism of DAG is less or the number of cores used is                Elimination(GE), LU decomposition (LU), Laplace and Fast
more in comparison to the degree of parallelism of DAG.                  Fourier Transform(FFT). A software was written to generate
Simplicity pays off in such cases.                                       the DAGs of GE, LU, Laplace and FFT, given the size of matrix.
2. Static level of a node indicates how far it is from the exit
node. It is generally better to first schedule the nodes farthest                   VI. EXPERIMENT RESULTS AND ANALYSIS
away from the exit node. Hence the strategy is to pick the
task with highest static level from the local list. The static               This section presents the performance comparison of
levels of all nodes are computed and stored as a part of DAG,            the proposed dynamic schedulers and static schedulers. 2
which is the input to dynamic scheduler.                                 static schedulers namely HLFET and ETF are implemented. A
3. If a node with more children are scheduled early, there are           total of 5 Dynamic scheduler with different combinations of
good chances that those children nodes may become ready                  stated global and local scheduling policies is experimented.
nodes. Thus with these more number of ready nodes , there                For convenience purpose, dynamic scheduling algorithms
are better chances of mapping the right task to the right core,          are given below names.
which in turn will reduce the makespan. This method works                load-fifo - load balancing at global scheduler and fifo
well, but not for all cases.                                             order at local scheduler
    The different combinations of the above mentioned local              load-sl     - load balancing at global scheduler and using
and global policies are tried. Also, the dynamic scheduling is           static level at local scheduler
compared with the quality of schedule generated by static                est-fifo - best pair of task-core based on earliest start time
scheduler. To experiment, 2 static schedulers HLFET and ETF              at global scheduler and fifo order at local schdeuler
are implemented. In HLFET, the nodes are prioritized with                est-sl     - best pair of task-core based on earliest s t a r t
static level. The task with the next highest priority is assigned        time at global scheduler and using static level at local
to core on which it will have earliest start time. The complexity        scheduler
of this is O(pv2). In ETF, the nodes are prioritized using static        load-maxdeg - load balancing at global scheduler and
level as in HLFET, but selects the best node-core pair, which            choosing task with maximum out degree
gives the earliest start time. This generates better schedules           The performance of 2 static schedulers and proposed 4 dy-
but with time complexity of O(pv3).                                      namic schedulers is compared, using random DAG from STG
                                                                         website[12]. Schedulers were run for different size of DAG,
                    V. EXPERIMENTAL SETUP                                and for each size, several pattern of DAGs were tried. The
                                                                         average SLR of the makespan obtained for each size was
   This section discusses the performance metrics used                   recorded. The plot of SLR vs DAG size is given in Fig.1.
and the different kind of DAG inputs used to test the                    There is a considerable variation in SLR obtained for differ-
proposed schedulers.                                                     ent size of DAGs, because the schedule generated depends
A. Comparison metrics:                                                   on the kind of DAGs. As the DAGs are random, there is varia-
                                                                         tion in the schedules obtained. But the time taken by both
    The comparison of the algorithms are based on the                    static and dynamic schedulers are very close to each other.
following metrics.                                                       Since DAGs are random, the time required also varies, but in
Makespan: is the overall completion time of the DAG. Also                most cases, performance of dynamic scheduler is compa-
known as schedule length.                                                rable to that of static ones. Thus dynamic schedulers can be
Scheduling Length Ratio(SLR): The main performance                       used in place of static schedulers, with the added advantage
measure is makespan. But since large set of DAGs with                    that it can better tolerate inaccuracies in estimation of node
varying properties are used, it is better to normalize the               cost and edge cost.
obtained schedule length to the lower bound on schedule
length. The lower bound is the critical path length. SLR is
defined as the ratio of obtained schedule length to the critical
path length.
Speedup: is the ratio of sequential time of executing DAG to
the obtained schedule length. The sequential time of DAG is
obtained by adding the cost of all nodes.
Efficiency: It is the ratio of obtained speedup to the number
of cores used.
B. Test suite
    The input DAG to the scheduler are chosen from
1. random DAGs from Standard Task Graph Set [12], from
where many researchers take DAGs for comparing the
performance of schedulers. The size of chosen DAGs are                                    Fig 1. SLR for Random DAGs

© 2012 ACEEE                                                        39
DOI: 01.IJIT.02.01. 528
ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012


                                                            The proposed dynamic schedulers were also found to per-
                                                            form well for widely used linear algebra algorithms like Gauss
                                                            elimination(GE), LU-decomposition method, Laplace and FFT.
                                                            A program was written to generate DAG of the above men-
                                                            tioned linear algebra methods, for any given input size. Thus
                                                            the schedulers were tested for varied size of each linear alge-
                                                            bra method. Fig 2. gives the performance both static and
                                                            dynamic scheduler for GE method. The SLR for different
                                                            number of equations is plotted. The simple load-fifo perfor-
                                                            mance is slightly inferior to others. Because just load balanc-
                                                            ing is not sufficient in scheduling the tasks. The est-fifo sched-
                                                            uler outperforms other dynamic schedulers. This is because
                                                            of good mapping decision at global level, but at the cost of
                                                            added complexity.
                                                                Fig 3. shows the performance of schedulers for LU
                    Fig 2. SLR for GE DAG
                                                            method. It is again evident that the proposed dynamic
                                                            schedulers are comparable to that of static schedulers. The
                                                            simple load-fifo scheduler is marginally inferior to others. For
                                                            FFT and Laplace, all schedulers performance is almost the
                                                            same. This is shown in Fig 4. for FFT. This is because that
                                                            DAGs are regular and symmetric, it does not matter much
                                                            which tasks is scheduled on which core. The computation
                                                            and communication costs are almost same, hence the selection
                                                            of task on a core does not affect the makespan considerably.
                                                            So the performance is almost the same for all schedulers.
                                                                The scalability of the proposed schedulers is also
                                                            measured. To show this, speedup is plotted for varying
                                                            number of cores in Fig 5. Except for GE DAGs, for all other
                                                            DAGs, schedulers show linear speed up. This is because
                    Fig 3. SLR for LU DAG                   only GE DAGs have high CCR, hence they can not well utilize
                                                            the increased number of cores. With these experiments, it is
                                                            quite clear that the proposed dynamic schedulers
                                                            performance is comparable to that of static schedulers. This
                                                            is proved for both synthetic and real application DAGs.

                                                                                   VII. CONCLUSION
                                                                In this paper, a framework to implement dynamic scheduler
                                                            is proposed to schedule a given DAG. Three dynamic
                                                            scheduling methods are proposed. The working of dynamic
                                                            scheduler is simulated and its performance is found to be in
                                                            comparable to that of well known static scheduler HLFET
                                                            and EFT. The scheduling takes place at global and local level.
                    Fig 4. SLR for FFT DAG
                                                            Different strategies are tried at both levels. The performance
                                                            of the proposed dynamic schedulers are compared. The
                                                            proposed dynamic scheduler performance is found to be in
                                                            comparable with static scheduler. The proposed dynamic est-
                                                            sl scheduler marginally outperforms other dynamic
                                                            schedulers.

                                                                                     FUTURE   WORK

                                                                We now have simulated dynamic scheduler with dummy
                                                            tasks. With this promising results obtained, we shall extend
                                                            dynamic scheduler to be actually implemented on real machine
                                                            and to use real tasks instead of dummy tasks. Another
                                                            direction of work is to explore other strategies for scheduling
                  Fig 5. Speedup vs # of cores              at both local and global level.
© 2012 ACEEE                                           40
DOI: 01.IJIT.02.01. 528
ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012


                           REFERENCES                                       [8] Laura De Giusti et. al., “ A Model for the Automatic Mapping
                                                                            of Tasks to Processors in Heterogeneous Multi-cluster
[1] Y.-K. Kwok and I. Ahmad. Static scheduling algorithms for               Architectures” , JCS&T Vol. 7 No. 1 April 2007
allocating directed task graphs to multiprocessors. ACM Computing           [9] Intel Threading Building Blocks. http://www.
Surveys, 31(4):406–471, 1999                                                threadingbuildingblocks.org/
[2] Cassavant. T. and J.A. Kuhl, 1988. Taxonomy of scheduling in            [10] OpenMP Architecture Review Board. OpenMP Application
general purpose distributed memory systems. IEEE Trans. Software            Program Interface Version 3.0, 2008. http://www.openmp.org/p-
Engg., 14: 141-154.                                                         documents/spec30.pdf.
[3] E. Ilavarasan and P. Thambidurai , 2007.Low Complexity                  [11] Y. Xia and V. K. Prasanna, “Collaborative scheduling of dag
Performance Effective Task Scheduling Algorithm for Heterogeneous           structured computations on multi-core processors,” in Conference
Computing Environments , Journal of Computer Sciences 3 (2):                Computing Frontiers, 2010, pp. 63–72.
94-103, 2007                                                                [12] http://www.kasahara.elec.waseda.ac.jp/schedule/
[4] T. Hagras, J. Janeèek . Static vs. Dynamic List-Scheduling              [13] M. Wu and D. D. Gajski, “Hypertool: A programming aid for
Performance Comparison , Acta Polytechnica Vol. 43 No. 6/2003               message-passing systems,” IEEE Trans. Parallel and Distributed
[5] Kwok Y., Ahmed I. Benchmarking the Task Graph Scheduling                Systems, vol. 1, pp. 330–343, July 1990.
Algorithms. Proc. IPPS/SPDP, 1998.                                          [14] Qin Zheng, “Dynamic adaptation of DAGs with uncertain
[6] F. Song, A. YarKhan, and J. J. Dongarra. Dynamic task scheduling        execution times in heterogeneous computing systems”, IPDPS
for linear algebra algorithms on distributed- memory multi-core             Workshops 2010 .
systems. Technical Report UT-CS-09-638, Computer Sciencee                   [15] Maruf Ahmed, Sharif M. H. Chowdhury, Masud Hasan, “Fast
Department, University of Tennessee, 2009.                                  Preemptive Task Scheduling Algorithm for Homogeneous and
[7] R. D. Blumofe, C. F. Joerg, B. C. Kuszmaul, C. E. Leiserson, K.         Heterogeneous Distributed Memory Systems”. SNPD 2008: 720-
H. Randall, and Y. Zhou. “Cilk: An efficient multi threaded runtime         725
system. In Principles and Practice of Parallel Programming”,                [16] H. Orsila, T. Kangas, T. D. Hminen, “Hybrid Algorithm for
Proceedings of the fifth ACM SIG- PLAN symposium on Principles              Mapping Static Task Graphs on Multiprocessor SoCs”,
and Practice of Parallel Programming, PPOPP’95, pages 207– 216,             International Symposium on System-on-Chip (SoC 2005), pp. 146-
Santa Barbara, CA, July 19-21 1995. ACM. DOI: 10.1145/                      150, 2005.
209936.209958.




© 2012 ACEEE                                                           41
DOI: 01.IJIT.02.01. 528

Weitere ähnliche Inhalte

Was ist angesagt?

Sharing of cluster resources among multiple Workflow Applications
Sharing of cluster resources among multiple Workflow ApplicationsSharing of cluster resources among multiple Workflow Applications
Sharing of cluster resources among multiple Workflow Applicationsijcsit
 
Optimized Assignment of Independent Task for Improving Resources Performance ...
Optimized Assignment of Independent Task for Improving Resources Performance ...Optimized Assignment of Independent Task for Improving Resources Performance ...
Optimized Assignment of Independent Task for Improving Resources Performance ...ijgca
 
Smooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to Scheduling
Smooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to SchedulingSmooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to Scheduling
Smooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to SchedulingAlkis Vazacopoulos
 
Improved Max-Min Scheduling Algorithm
Improved Max-Min Scheduling AlgorithmImproved Max-Min Scheduling Algorithm
Improved Max-Min Scheduling Algorithmiosrjce
 
Hadoop scheduler with deadline constraint
Hadoop scheduler with deadline constraintHadoop scheduler with deadline constraint
Hadoop scheduler with deadline constraintijccsa
 
Scheduling and Allocation Algorithm for an Elliptic Filter
Scheduling and Allocation Algorithm for an Elliptic FilterScheduling and Allocation Algorithm for an Elliptic Filter
Scheduling and Allocation Algorithm for an Elliptic Filterijait
 
Independent tasks scheduling based on genetic
Independent tasks scheduling based on geneticIndependent tasks scheduling based on genetic
Independent tasks scheduling based on geneticambitlick
 
Comparative Analysis of Various Grid Based Scheduling Algorithms
Comparative Analysis of Various Grid Based Scheduling AlgorithmsComparative Analysis of Various Grid Based Scheduling Algorithms
Comparative Analysis of Various Grid Based Scheduling Algorithmsiosrjce
 
Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...
Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...
Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...csandit
 
Ieeepro techno solutions 2014 ieee java project - a hyper-heuristic scheduling
Ieeepro techno solutions   2014 ieee java project - a hyper-heuristic schedulingIeeepro techno solutions   2014 ieee java project - a hyper-heuristic scheduling
Ieeepro techno solutions 2014 ieee java project - a hyper-heuristic schedulinghemanthbbc
 
(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
 
Task scheduling methodologies for high speed computing systems
Task scheduling methodologies for high speed computing systemsTask scheduling methodologies for high speed computing systems
Task scheduling methodologies for high speed computing systemsijesajournal
 
A Modified GA-based Workflow Scheduling for Cloud Computing Environment
A Modified GA-based Workflow Scheduling for Cloud Computing EnvironmentA Modified GA-based Workflow Scheduling for Cloud Computing Environment
A Modified GA-based Workflow Scheduling for Cloud Computing EnvironmentIJCSIS Research Publications
 
Deadline and Suffrage Aware Task Scheduling Approach for Cloud Environment
Deadline and Suffrage Aware Task Scheduling Approach for Cloud EnvironmentDeadline and Suffrage Aware Task Scheduling Approach for Cloud Environment
Deadline and Suffrage Aware Task Scheduling Approach for Cloud EnvironmentIRJET Journal
 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
 

Was ist angesagt? (16)

Sharing of cluster resources among multiple Workflow Applications
Sharing of cluster resources among multiple Workflow ApplicationsSharing of cluster resources among multiple Workflow Applications
Sharing of cluster resources among multiple Workflow Applications
 
Optimized Assignment of Independent Task for Improving Resources Performance ...
Optimized Assignment of Independent Task for Improving Resources Performance ...Optimized Assignment of Independent Task for Improving Resources Performance ...
Optimized Assignment of Independent Task for Improving Resources Performance ...
 
Smooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to Scheduling
Smooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to SchedulingSmooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to Scheduling
Smooth-and-Dive Accelerator: A Pre-MILP Primal Heuristic applied to Scheduling
 
Improved Max-Min Scheduling Algorithm
Improved Max-Min Scheduling AlgorithmImproved Max-Min Scheduling Algorithm
Improved Max-Min Scheduling Algorithm
 
Hadoop scheduler with deadline constraint
Hadoop scheduler with deadline constraintHadoop scheduler with deadline constraint
Hadoop scheduler with deadline constraint
 
Scheduling and Allocation Algorithm for an Elliptic Filter
Scheduling and Allocation Algorithm for an Elliptic FilterScheduling and Allocation Algorithm for an Elliptic Filter
Scheduling and Allocation Algorithm for an Elliptic Filter
 
Independent tasks scheduling based on genetic
Independent tasks scheduling based on geneticIndependent tasks scheduling based on genetic
Independent tasks scheduling based on genetic
 
Comparative Analysis of Various Grid Based Scheduling Algorithms
Comparative Analysis of Various Grid Based Scheduling AlgorithmsComparative Analysis of Various Grid Based Scheduling Algorithms
Comparative Analysis of Various Grid Based Scheduling Algorithms
 
Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...
Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...
Fault-Tolerance Aware Multi Objective Scheduling Algorithm for Task Schedulin...
 
Ieeepro techno solutions 2014 ieee java project - a hyper-heuristic scheduling
Ieeepro techno solutions   2014 ieee java project - a hyper-heuristic schedulingIeeepro techno solutions   2014 ieee java project - a hyper-heuristic scheduling
Ieeepro techno solutions 2014 ieee java project - a hyper-heuristic scheduling
 
(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...
 
Task scheduling methodologies for high speed computing systems
Task scheduling methodologies for high speed computing systemsTask scheduling methodologies for high speed computing systems
Task scheduling methodologies for high speed computing systems
 
A Modified GA-based Workflow Scheduling for Cloud Computing Environment
A Modified GA-based Workflow Scheduling for Cloud Computing EnvironmentA Modified GA-based Workflow Scheduling for Cloud Computing Environment
A Modified GA-based Workflow Scheduling for Cloud Computing Environment
 
Deadline and Suffrage Aware Task Scheduling Approach for Cloud Environment
Deadline and Suffrage Aware Task Scheduling Approach for Cloud EnvironmentDeadline and Suffrage Aware Task Scheduling Approach for Cloud Environment
Deadline and Suffrage Aware Task Scheduling Approach for Cloud Environment
 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 
J0210053057
J0210053057J0210053057
J0210053057
 

Andere mochten auch

The Study of MOSFET Parallelism in High Frequency DC/DC Converter
The Study of MOSFET Parallelism in High Frequency DC/DC ConverterThe Study of MOSFET Parallelism in High Frequency DC/DC Converter
The Study of MOSFET Parallelism in High Frequency DC/DC ConverterIDES Editor
 
High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...
High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...
High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...IDES Editor
 
Customized Dynamic Host Configuration Protocol
Customized Dynamic Host Configuration ProtocolCustomized Dynamic Host Configuration Protocol
Customized Dynamic Host Configuration ProtocolIDES Editor
 
Extending UML State Diagrams to Model Agent Mobility
Extending UML State Diagrams to Model Agent MobilityExtending UML State Diagrams to Model Agent Mobility
Extending UML State Diagrams to Model Agent MobilityIDES Editor
 
Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...IDES Editor
 
On-line Fault diagnosis of Arbitrary Connected Networks
On-line Fault diagnosis of Arbitrary Connected NetworksOn-line Fault diagnosis of Arbitrary Connected Networks
On-line Fault diagnosis of Arbitrary Connected NetworksIDES Editor
 
An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...
An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...
An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...IDES Editor
 
Prototyping a Wireless Sensor Node using FPGA for Mines Safety Application
Prototyping a Wireless Sensor Node using FPGA for Mines Safety ApplicationPrototyping a Wireless Sensor Node using FPGA for Mines Safety Application
Prototyping a Wireless Sensor Node using FPGA for Mines Safety ApplicationIDES Editor
 

Andere mochten auch (8)

The Study of MOSFET Parallelism in High Frequency DC/DC Converter
The Study of MOSFET Parallelism in High Frequency DC/DC ConverterThe Study of MOSFET Parallelism in High Frequency DC/DC Converter
The Study of MOSFET Parallelism in High Frequency DC/DC Converter
 
High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...
High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...
High Capacity Robust Medical Image Data Hiding using CDCS with Integrity Chec...
 
Customized Dynamic Host Configuration Protocol
Customized Dynamic Host Configuration ProtocolCustomized Dynamic Host Configuration Protocol
Customized Dynamic Host Configuration Protocol
 
Extending UML State Diagrams to Model Agent Mobility
Extending UML State Diagrams to Model Agent MobilityExtending UML State Diagrams to Model Agent Mobility
Extending UML State Diagrams to Model Agent Mobility
 
Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...
 
On-line Fault diagnosis of Arbitrary Connected Networks
On-line Fault diagnosis of Arbitrary Connected NetworksOn-line Fault diagnosis of Arbitrary Connected Networks
On-line Fault diagnosis of Arbitrary Connected Networks
 
An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...
An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...
An Area Efficient, High Performance, Low Dead Zone, Phase Frequency Detector ...
 
Prototyping a Wireless Sensor Node using FPGA for Mines Safety Application
Prototyping a Wireless Sensor Node using FPGA for Mines Safety ApplicationPrototyping a Wireless Sensor Node using FPGA for Mines Safety Application
Prototyping a Wireless Sensor Node using FPGA for Mines Safety Application
 

Ähnlich wie A Framework and Methods for Dynamic Scheduling of a Directed Acyclic Graph on Multi-core

MULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORS
MULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORSMULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORS
MULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORScscpconf
 
A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...
A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...
A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...ijcsa
 
Reconfiguration Strategies for Online Hardware Multitasking in Embedded Systems
Reconfiguration Strategies for Online Hardware Multitasking in Embedded SystemsReconfiguration Strategies for Online Hardware Multitasking in Embedded Systems
Reconfiguration Strategies for Online Hardware Multitasking in Embedded SystemsCSEIJJournal
 
A bi objective workflow application
A bi objective workflow applicationA bi objective workflow application
A bi objective workflow applicationIJITE
 
Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...
Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...
Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...IRJET Journal
 
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...ijesajournal
 
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...ijesajournal
 
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...ijesajournal
 
Enhancing Performance and Fault Tolerance of Hadoop Cluster
Enhancing Performance and Fault Tolerance of Hadoop ClusterEnhancing Performance and Fault Tolerance of Hadoop Cluster
Enhancing Performance and Fault Tolerance of Hadoop ClusterIRJET Journal
 
Earlier stage for straggler detection and handling using combined CPU test an...
Earlier stage for straggler detection and handling using combined CPU test an...Earlier stage for straggler detection and handling using combined CPU test an...
Earlier stage for straggler detection and handling using combined CPU test an...IJECEIAES
 
Ieeepro techno solutions 2014 ieee dotnet project - a hyper-heuristic sched...
Ieeepro techno solutions   2014 ieee dotnet project - a hyper-heuristic sched...Ieeepro techno solutions   2014 ieee dotnet project - a hyper-heuristic sched...
Ieeepro techno solutions 2014 ieee dotnet project - a hyper-heuristic sched...ASAITHAMBIRAJAA
 
The Optimization-based Approaches for Task Scheduling to Enhance the Resource...
The Optimization-based Approaches for Task Scheduling to Enhance the Resource...The Optimization-based Approaches for Task Scheduling to Enhance the Resource...
The Optimization-based Approaches for Task Scheduling to Enhance the Resource...BRNSSPublicationHubI
 
Ieeepro techno solutions ieee java project - budget-driven scheduling algor...
Ieeepro techno solutions   ieee java project - budget-driven scheduling algor...Ieeepro techno solutions   ieee java project - budget-driven scheduling algor...
Ieeepro techno solutions ieee java project - budget-driven scheduling algor...hemanthbbc
 
Ieeepro techno solutions ieee dotnet project - budget-driven scheduling alg...
Ieeepro techno solutions   ieee dotnet project - budget-driven scheduling alg...Ieeepro techno solutions   ieee dotnet project - budget-driven scheduling alg...
Ieeepro techno solutions ieee dotnet project - budget-driven scheduling alg...ASAITHAMBIRAJAA
 
High Dimensionality Structures Selection for Efficient Economic Big data usin...
High Dimensionality Structures Selection for Efficient Economic Big data usin...High Dimensionality Structures Selection for Efficient Economic Big data usin...
High Dimensionality Structures Selection for Efficient Economic Big data usin...IRJET Journal
 
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENTDYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENTIJCNCJournal
 
Dynamic Task Scheduling based on Burst Time Requirement for Cloud Environment
Dynamic Task Scheduling based on Burst Time Requirement for Cloud EnvironmentDynamic Task Scheduling based on Burst Time Requirement for Cloud Environment
Dynamic Task Scheduling based on Burst Time Requirement for Cloud EnvironmentIJCNCJournal
 

Ähnlich wie A Framework and Methods for Dynamic Scheduling of a Directed Acyclic Graph on Multi-core (20)

MULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORS
MULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORSMULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORS
MULTIPLE DAG APPLICATIONS SCHEDULING ON A CLUSTER OF PROCESSORS
 
A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...
A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...
A Novel Framework and Policies for On-line Block of Cores Allotment for Multi...
 
Reconfiguration Strategies for Online Hardware Multitasking in Embedded Systems
Reconfiguration Strategies for Online Hardware Multitasking in Embedded SystemsReconfiguration Strategies for Online Hardware Multitasking in Embedded Systems
Reconfiguration Strategies for Online Hardware Multitasking in Embedded Systems
 
A bi objective workflow application
A bi objective workflow applicationA bi objective workflow application
A bi objective workflow application
 
Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...
Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...
Scheduling Algorithm Based Simulator for Resource Allocation Task in Cloud Co...
 
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
 
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
 
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
A NOVEL METHODOLOGY FOR TASK DISTRIBUTION IN HETEROGENEOUS RECONFIGURABLE COM...
 
Enhancing Performance and Fault Tolerance of Hadoop Cluster
Enhancing Performance and Fault Tolerance of Hadoop ClusterEnhancing Performance and Fault Tolerance of Hadoop Cluster
Enhancing Performance and Fault Tolerance of Hadoop Cluster
 
C1803052327
C1803052327C1803052327
C1803052327
 
Earlier stage for straggler detection and handling using combined CPU test an...
Earlier stage for straggler detection and handling using combined CPU test an...Earlier stage for straggler detection and handling using combined CPU test an...
Earlier stage for straggler detection and handling using combined CPU test an...
 
C017241316
C017241316C017241316
C017241316
 
Ieeepro techno solutions 2014 ieee dotnet project - a hyper-heuristic sched...
Ieeepro techno solutions   2014 ieee dotnet project - a hyper-heuristic sched...Ieeepro techno solutions   2014 ieee dotnet project - a hyper-heuristic sched...
Ieeepro techno solutions 2014 ieee dotnet project - a hyper-heuristic sched...
 
genetic paper
genetic papergenetic paper
genetic paper
 
The Optimization-based Approaches for Task Scheduling to Enhance the Resource...
The Optimization-based Approaches for Task Scheduling to Enhance the Resource...The Optimization-based Approaches for Task Scheduling to Enhance the Resource...
The Optimization-based Approaches for Task Scheduling to Enhance the Resource...
 
Ieeepro techno solutions ieee java project - budget-driven scheduling algor...
Ieeepro techno solutions   ieee java project - budget-driven scheduling algor...Ieeepro techno solutions   ieee java project - budget-driven scheduling algor...
Ieeepro techno solutions ieee java project - budget-driven scheduling algor...
 
Ieeepro techno solutions ieee dotnet project - budget-driven scheduling alg...
Ieeepro techno solutions   ieee dotnet project - budget-driven scheduling alg...Ieeepro techno solutions   ieee dotnet project - budget-driven scheduling alg...
Ieeepro techno solutions ieee dotnet project - budget-driven scheduling alg...
 
High Dimensionality Structures Selection for Efficient Economic Big data usin...
High Dimensionality Structures Selection for Efficient Economic Big data usin...High Dimensionality Structures Selection for Efficient Economic Big data usin...
High Dimensionality Structures Selection for Efficient Economic Big data usin...
 
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENTDYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
DYNAMIC TASK SCHEDULING BASED ON BURST TIME REQUIREMENT FOR CLOUD ENVIRONMENT
 
Dynamic Task Scheduling based on Burst Time Requirement for Cloud Environment
Dynamic Task Scheduling based on Burst Time Requirement for Cloud EnvironmentDynamic Task Scheduling based on Burst Time Requirement for Cloud Environment
Dynamic Task Scheduling based on Burst Time Requirement for Cloud Environment
 

Mehr von IDES Editor

Power System State Estimation - A Review
Power System State Estimation - A ReviewPower System State Estimation - A Review
Power System State Estimation - A ReviewIDES Editor
 
Artificial Intelligence Technique based Reactive Power Planning Incorporating...
Artificial Intelligence Technique based Reactive Power Planning Incorporating...Artificial Intelligence Technique based Reactive Power Planning Incorporating...
Artificial Intelligence Technique based Reactive Power Planning Incorporating...IDES Editor
 
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...IDES Editor
 
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...IDES Editor
 
Line Losses in the 14-Bus Power System Network using UPFC
Line Losses in the 14-Bus Power System Network using UPFCLine Losses in the 14-Bus Power System Network using UPFC
Line Losses in the 14-Bus Power System Network using UPFCIDES Editor
 
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...IDES Editor
 
Assessing Uncertainty of Pushover Analysis to Geometric Modeling
Assessing Uncertainty of Pushover Analysis to Geometric ModelingAssessing Uncertainty of Pushover Analysis to Geometric Modeling
Assessing Uncertainty of Pushover Analysis to Geometric ModelingIDES Editor
 
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...IDES Editor
 
Selfish Node Isolation & Incentivation using Progressive Thresholds
Selfish Node Isolation & Incentivation using Progressive ThresholdsSelfish Node Isolation & Incentivation using Progressive Thresholds
Selfish Node Isolation & Incentivation using Progressive ThresholdsIDES Editor
 
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...IDES Editor
 
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...IDES Editor
 
Cloud Security and Data Integrity with Client Accountability Framework
Cloud Security and Data Integrity with Client Accountability FrameworkCloud Security and Data Integrity with Client Accountability Framework
Cloud Security and Data Integrity with Client Accountability FrameworkIDES Editor
 
Genetic Algorithm based Layered Detection and Defense of HTTP Botnet
Genetic Algorithm based Layered Detection and Defense of HTTP BotnetGenetic Algorithm based Layered Detection and Defense of HTTP Botnet
Genetic Algorithm based Layered Detection and Defense of HTTP BotnetIDES Editor
 
Enhancing Data Storage Security in Cloud Computing Through Steganography
Enhancing Data Storage Security in Cloud Computing Through SteganographyEnhancing Data Storage Security in Cloud Computing Through Steganography
Enhancing Data Storage Security in Cloud Computing Through SteganographyIDES Editor
 
Low Energy Routing for WSN’s
Low Energy Routing for WSN’sLow Energy Routing for WSN’s
Low Energy Routing for WSN’sIDES Editor
 
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...IDES Editor
 
Rotman Lens Performance Analysis
Rotman Lens Performance AnalysisRotman Lens Performance Analysis
Rotman Lens Performance AnalysisIDES Editor
 
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral ImagesBand Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral ImagesIDES Editor
 
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...IDES Editor
 
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...IDES Editor
 

Mehr von IDES Editor (20)

Power System State Estimation - A Review
Power System State Estimation - A ReviewPower System State Estimation - A Review
Power System State Estimation - A Review
 
Artificial Intelligence Technique based Reactive Power Planning Incorporating...
Artificial Intelligence Technique based Reactive Power Planning Incorporating...Artificial Intelligence Technique based Reactive Power Planning Incorporating...
Artificial Intelligence Technique based Reactive Power Planning Incorporating...
 
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
 
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
 
Line Losses in the 14-Bus Power System Network using UPFC
Line Losses in the 14-Bus Power System Network using UPFCLine Losses in the 14-Bus Power System Network using UPFC
Line Losses in the 14-Bus Power System Network using UPFC
 
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
 
Assessing Uncertainty of Pushover Analysis to Geometric Modeling
Assessing Uncertainty of Pushover Analysis to Geometric ModelingAssessing Uncertainty of Pushover Analysis to Geometric Modeling
Assessing Uncertainty of Pushover Analysis to Geometric Modeling
 
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
 
Selfish Node Isolation & Incentivation using Progressive Thresholds
Selfish Node Isolation & Incentivation using Progressive ThresholdsSelfish Node Isolation & Incentivation using Progressive Thresholds
Selfish Node Isolation & Incentivation using Progressive Thresholds
 
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
 
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
 
Cloud Security and Data Integrity with Client Accountability Framework
Cloud Security and Data Integrity with Client Accountability FrameworkCloud Security and Data Integrity with Client Accountability Framework
Cloud Security and Data Integrity with Client Accountability Framework
 
Genetic Algorithm based Layered Detection and Defense of HTTP Botnet
Genetic Algorithm based Layered Detection and Defense of HTTP BotnetGenetic Algorithm based Layered Detection and Defense of HTTP Botnet
Genetic Algorithm based Layered Detection and Defense of HTTP Botnet
 
Enhancing Data Storage Security in Cloud Computing Through Steganography
Enhancing Data Storage Security in Cloud Computing Through SteganographyEnhancing Data Storage Security in Cloud Computing Through Steganography
Enhancing Data Storage Security in Cloud Computing Through Steganography
 
Low Energy Routing for WSN’s
Low Energy Routing for WSN’sLow Energy Routing for WSN’s
Low Energy Routing for WSN’s
 
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
 
Rotman Lens Performance Analysis
Rotman Lens Performance AnalysisRotman Lens Performance Analysis
Rotman Lens Performance Analysis
 
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral ImagesBand Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
 
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
 
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
 

Kürzlich hochgeladen

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Kürzlich hochgeladen (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

A Framework and Methods for Dynamic Scheduling of a Directed Acyclic Graph on Multi-core

  • 1. ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012 A Framework and Methods for Dynamic Scheduling of a Directed Acyclic Graph on Multi-core Uma B1, C R Venugopal2 1 Malnad College of engineering, Hassan, India Email: umaboregowda@gmail.com 2 Sri Jayachamarajendra College of engineering, Mysore, India Email: venu713@gmail.com Abstract—The data flow model is gaining popularity as a precedence constraints[1].Scheduling methods can be programming paradigm for multi-core processors. Efficient broadly classified into static and dynamic methods. Several scheduling of an application modeled by Directed Acyclic static task scheduling methods are found in literature[1,3,4]. Graph (DAG) is a key issue when performance is very Few drawbacks of static scheduling are a) need to correctly important. DAG represents computational solutions, in which capture the program behavior as a DAG which is very difficult the nodes represent tasks to be executed and edges represent precedence constraints among the tasks. The task scheduling b) to know the exact weight of every node and edge c) size of problem in general is a NP-complete problem[2]. Several static the DAG depends on size of problem being solved, which scheduling heuristics have been proposed. But the major grows enormously as problem size is increased d) can be problem in static list scheduling is the inherent difficulty in applied to a limited class of problems. Dynamic scheduling exact estimation of task cost and edge cost in a DAG and also overcomes these drawbacks, but has the little overhead of its inability to consider and manage with runtime behavior of scheduling costs during runtime. tasks. This underlines the need for dynamic scheduling of a Although the benefits of dynamic data-driven scheduling DAG. This paper presents how in general, dynamic scheduling were discovered in early 80’s, recently they are being of a DAG can be done. Also proposes 4 simple methods to rediscovered as tools for exploiting the performance of multi- perform dynamic scheduling of a DAG. These methods have been simulated and experimented using a representative set core processors. Our contributions in this paper include of DAG structured computations from both synthetic and real a)implemented a simulating framework to experiment dynamic problems. The proposed dynamic scheduler performance is scheduling methods b)implemented 4 methods of dynamic found to be in comparable with that of static scheduling DAG scheduling c) compared the performance of proposed methods. The performance comparison of the proposed dynamic scheduling methods with static scheduling methods dynamic scheduling methods is also carried out. d) compared the performance of the proposed dynamic scheduling methods and analyzed their performance e) Keywords: DAG, static scheduling, dynamic scheduling generated DAGs of well known linear methods like GE, LU, Laplace & FFT to be used as input to the proposed scheduler. I. INTRODUCTION The rest of the paper is organized as follows: In section 2 we The recent advancements in VLSI technology has led to provide the background of task scheduling. Section 3 gives increase in number of processing units on a single die i.e. a summary of the work done so far in scheduling. The multi-core. The trend to increase clock speed has hit a wall proposed framework for dynamic DAG scheduling is given due to increased heat dissipation, increased power section 4. The kind of inputs tested is indicated in section 5. requirements and increased leakage current. The existing The performance of the schedulers is discussed in section 6. system software is inadequate for this new architecture and Section 7 concludes the paper and gives future direction of the existing code base will be incapable of delivering expected work. increased performance on this new architecture. They may not even be capable to harness the full potential of multi- II. BACKGROUND core processor. Hence the need of new system software to In our case, the input to the scheduler is a DAG. A task exploit the complete power of multi-core. can begin its execution only after all its predecessors have A computational solution can be represented as a DAG, completed execution. Static scheduling methods can be in which the nodes represent code segments to be executed. further grouped into list scheduling methods, clustering An edge from node ‘u’ to node ‘v’ indicates that output of algorithms, guided random search methods and task code segment at node ‘u’ is an input to code segment at node duplication based algorithms. List scheduling methods ‘v’. The weight of a node represents the execution basically involve 3 steps – a) prioritizing tasks b) time(estimated) of the corresponding code segment. The assigning tasks to cores based on some criterion c) ordering weight of edge (u,v) indicates the volume of data to be the tasks assigned to a core. Unlike static scheduling communicated from node ‘u’ to node ‘v’. The objective of methods, dynamic scheduling does not require accurate scheduling DAG structured computation is to minimize the information on DAG, rather mapping of tasks to cores takes execution time by allocating tasks to cores, while preserving place on-the-fly. Also it can tolerate error in weight estimation © 2012 ACEEE 37 DOI: 01.IJIT.02.01. 528
  • 2. ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012 and more fault tolerant. and the schedulers collaborate with each other to balance the workload. We have made an attempt to adopt the static III. RELATED WORK list scheduling methods to dynamically schedule a DAG. The scheduling problem has been extensively studied. A IV. BASIC FRAMEWORK OF DYNAMIC SCHEDULER FOR A DAG lot of static scheduling methods have been proposed. List scheduling methods are the generally preferred static This section provides the overall view of the proposed 2- scheduling methods for its low complexity and reasonably level dynamic scheduler and its basic working. Also, the good quality schedules. HLFET[5](Highest Level First with different scheduling policies tried at both global and local Estimated Time) is a simple and low complexity method, which level are discussed. uses static level to prioritize tasks and uses earliest start time The input to our scheduler is a DAG. Scheduling happens to assign task to cores. ETF[5] (Earliest Time First) selects at 2 levels – global and local level. The complete information the best pair of task-core, based on earliest execution start about all tasks in the DAG is stored in the global scheduler. time, at each scheduling step. This method generates better The job of this scheduler is to assign tasks to different cores schedules, but its time complexity is more. CPOP[1](Critical and to update the status of related tasks, with an aim to Path on Processor) underlines the importance of tasks lying reduce the overall time to complete the execution of DAG. on critical path, schedules them onto a separate processor, Ready tasks are the ones, whose predecessors in DAG have so that all critical tasks are executed at the earliest. The completed execution and hence they are ready for execution. MCP(Modified Critical Path) algorithm[13] assigns the A local scheduler running on each core, maintains the set of priority of a task node according to its As Late As Possible ready tasks assigned to it by the global scheduler. It picks (ALAP) value. The ALAP of a task node is a measure of how the task from the list in some order, so as to maximize far the node’s start time can be delayed without increasing scheduling objective and executes it. The completion of a the schedule length. Qin Zheng [14] have studied to improve task is informed to the global scheduler. Different Scheduling the performance of static algorithms when tasks execution policies are tried at both global and local level. times in a DAG are uncertain. The initial schedule, based on Global scheduling policies : the estimated task execution times, is revised or modified (adapted) during runtime as necessary when tasks overrun Few policies proposed to assign the ready tasks to cores or under run. The objective is to minimize the response time are discussed below. and the number of adaptations. Most list scheduling methods 1. The idea is that if all cores are busy without idling due to non-availability of data or tasks, then the best performance are non-preemptive. Fast Preemptive scheduling[15] method in terms of reduced makespan and high speedup can be is more realistic and have lot of potentials. It has lot of expected. One simple way to do this, is balancing the load flexibility in scheduling as low priority task can be executing across all cores. To achieve this, an estimation of the load on until a high priority task becomes ready. This leads to better all cores is maintained and the next ready task is assigned to utilization of resources. Several other methods are proposed the least loaded core at that point of time. This is a simple based on clustering, look-ahead mechanism and back filling method and yet gives reasonably good schedules. approaches to schedule an application. 2. The drawback of the above load balancing policy is that Dongarra et. al. [6] have presented a dynamic task the load may be balanced across the cores, but still the cores scheduling approach to execute dense linear algebra may be idling, because of waiting for data from other tasks algorithms on multi-core systems, also have provided executed on different cores. Depending on 1. t h e analytical analysis to show why the tiled algorithms are interconnection between the cores, the time required to scalable. The coarse-grain data flow model is the main transfer data between any two cores varies. This was not principle behind emerging multi-core programming taken into consideration in the previous policy. Hence to environments such as Cilk/Cilk++ [9], Intel R Threading reduce this idle time due to the non-availability of data, the Building Blocks (TBB) [9] and Tasking in OpenMP 3.0 [10]. ready task is assigned to a core, on which it will have the All these frameworks use a very small set of extensions to earliest start time. Thus the policy is to find the best pairing common programming languages and involve a relatively of task and core, among all ready tasks, so as to reduce the simple compilation stage but potentially much more complex overall completion time. This method is better than the runtime system. Cilk[7] developed at MIT uses work-stealing previous one, but its time complexity is more. One drawback policy to schedule the tasks, but the programmer has to is, it does the best mapping with the information on hand at explicitly identify parallel tasks using keywords. Laura De that time, but does not look beyond i.e. off springs of the Giusti et al.[8] have developed a model for automatic mapping ready task, to take much better decision. of concurrent tasks to processors applying graph analysis for the relation among tasks, in which processing and Local scheduling policies : communicating times are incorporated. Viktor K. Prasanna et. Simple methods used to pick one of the assigned tasks, al. [11] have implemented a lightweight scheduling method at each core are given below. for DAG structured computations on multi-core processors. 1. One method is to execute the tasks in the order they are The scheduling activities are distributed across the cores assigned to core. Though it is simple, it works out well, mostly © 2012 ACEEE 38 DOI: 01.IJIT.02.01. 528
  • 3. ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012 in cases where the number of waiting tasks at each core is 50,100, 300 and 500 nodes. less in number. This will be the case, when the degree of 2. DAGs of linear algebra methods including Gauss- parallelism of DAG is less or the number of cores used is Elimination(GE), LU decomposition (LU), Laplace and Fast more in comparison to the degree of parallelism of DAG. Fourier Transform(FFT). A software was written to generate Simplicity pays off in such cases. the DAGs of GE, LU, Laplace and FFT, given the size of matrix. 2. Static level of a node indicates how far it is from the exit node. It is generally better to first schedule the nodes farthest VI. EXPERIMENT RESULTS AND ANALYSIS away from the exit node. Hence the strategy is to pick the task with highest static level from the local list. The static This section presents the performance comparison of levels of all nodes are computed and stored as a part of DAG, the proposed dynamic schedulers and static schedulers. 2 which is the input to dynamic scheduler. static schedulers namely HLFET and ETF are implemented. A 3. If a node with more children are scheduled early, there are total of 5 Dynamic scheduler with different combinations of good chances that those children nodes may become ready stated global and local scheduling policies is experimented. nodes. Thus with these more number of ready nodes , there For convenience purpose, dynamic scheduling algorithms are better chances of mapping the right task to the right core, are given below names. which in turn will reduce the makespan. This method works load-fifo - load balancing at global scheduler and fifo well, but not for all cases. order at local scheduler The different combinations of the above mentioned local load-sl - load balancing at global scheduler and using and global policies are tried. Also, the dynamic scheduling is static level at local scheduler compared with the quality of schedule generated by static est-fifo - best pair of task-core based on earliest start time scheduler. To experiment, 2 static schedulers HLFET and ETF at global scheduler and fifo order at local schdeuler are implemented. In HLFET, the nodes are prioritized with est-sl - best pair of task-core based on earliest s t a r t static level. The task with the next highest priority is assigned time at global scheduler and using static level at local to core on which it will have earliest start time. The complexity scheduler of this is O(pv2). In ETF, the nodes are prioritized using static load-maxdeg - load balancing at global scheduler and level as in HLFET, but selects the best node-core pair, which choosing task with maximum out degree gives the earliest start time. This generates better schedules The performance of 2 static schedulers and proposed 4 dy- but with time complexity of O(pv3). namic schedulers is compared, using random DAG from STG website[12]. Schedulers were run for different size of DAG, V. EXPERIMENTAL SETUP and for each size, several pattern of DAGs were tried. The average SLR of the makespan obtained for each size was This section discusses the performance metrics used recorded. The plot of SLR vs DAG size is given in Fig.1. and the different kind of DAG inputs used to test the There is a considerable variation in SLR obtained for differ- proposed schedulers. ent size of DAGs, because the schedule generated depends A. Comparison metrics: on the kind of DAGs. As the DAGs are random, there is varia- tion in the schedules obtained. But the time taken by both The comparison of the algorithms are based on the static and dynamic schedulers are very close to each other. following metrics. Since DAGs are random, the time required also varies, but in Makespan: is the overall completion time of the DAG. Also most cases, performance of dynamic scheduler is compa- known as schedule length. rable to that of static ones. Thus dynamic schedulers can be Scheduling Length Ratio(SLR): The main performance used in place of static schedulers, with the added advantage measure is makespan. But since large set of DAGs with that it can better tolerate inaccuracies in estimation of node varying properties are used, it is better to normalize the cost and edge cost. obtained schedule length to the lower bound on schedule length. The lower bound is the critical path length. SLR is defined as the ratio of obtained schedule length to the critical path length. Speedup: is the ratio of sequential time of executing DAG to the obtained schedule length. The sequential time of DAG is obtained by adding the cost of all nodes. Efficiency: It is the ratio of obtained speedup to the number of cores used. B. Test suite The input DAG to the scheduler are chosen from 1. random DAGs from Standard Task Graph Set [12], from where many researchers take DAGs for comparing the performance of schedulers. The size of chosen DAGs are Fig 1. SLR for Random DAGs © 2012 ACEEE 39 DOI: 01.IJIT.02.01. 528
  • 4. ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012 The proposed dynamic schedulers were also found to per- form well for widely used linear algebra algorithms like Gauss elimination(GE), LU-decomposition method, Laplace and FFT. A program was written to generate DAG of the above men- tioned linear algebra methods, for any given input size. Thus the schedulers were tested for varied size of each linear alge- bra method. Fig 2. gives the performance both static and dynamic scheduler for GE method. The SLR for different number of equations is plotted. The simple load-fifo perfor- mance is slightly inferior to others. Because just load balanc- ing is not sufficient in scheduling the tasks. The est-fifo sched- uler outperforms other dynamic schedulers. This is because of good mapping decision at global level, but at the cost of added complexity. Fig 3. shows the performance of schedulers for LU Fig 2. SLR for GE DAG method. It is again evident that the proposed dynamic schedulers are comparable to that of static schedulers. The simple load-fifo scheduler is marginally inferior to others. For FFT and Laplace, all schedulers performance is almost the same. This is shown in Fig 4. for FFT. This is because that DAGs are regular and symmetric, it does not matter much which tasks is scheduled on which core. The computation and communication costs are almost same, hence the selection of task on a core does not affect the makespan considerably. So the performance is almost the same for all schedulers. The scalability of the proposed schedulers is also measured. To show this, speedup is plotted for varying number of cores in Fig 5. Except for GE DAGs, for all other DAGs, schedulers show linear speed up. This is because Fig 3. SLR for LU DAG only GE DAGs have high CCR, hence they can not well utilize the increased number of cores. With these experiments, it is quite clear that the proposed dynamic schedulers performance is comparable to that of static schedulers. This is proved for both synthetic and real application DAGs. VII. CONCLUSION In this paper, a framework to implement dynamic scheduler is proposed to schedule a given DAG. Three dynamic scheduling methods are proposed. The working of dynamic scheduler is simulated and its performance is found to be in comparable to that of well known static scheduler HLFET and EFT. The scheduling takes place at global and local level. Fig 4. SLR for FFT DAG Different strategies are tried at both levels. The performance of the proposed dynamic schedulers are compared. The proposed dynamic scheduler performance is found to be in comparable with static scheduler. The proposed dynamic est- sl scheduler marginally outperforms other dynamic schedulers. FUTURE WORK We now have simulated dynamic scheduler with dummy tasks. With this promising results obtained, we shall extend dynamic scheduler to be actually implemented on real machine and to use real tasks instead of dummy tasks. Another direction of work is to explore other strategies for scheduling Fig 5. Speedup vs # of cores at both local and global level. © 2012 ACEEE 40 DOI: 01.IJIT.02.01. 528
  • 5. ACEEE Int. J. on Information Technology, Vol. 02, No. 01, March 2012 REFERENCES [8] Laura De Giusti et. al., “ A Model for the Automatic Mapping of Tasks to Processors in Heterogeneous Multi-cluster [1] Y.-K. Kwok and I. Ahmad. Static scheduling algorithms for Architectures” , JCS&T Vol. 7 No. 1 April 2007 allocating directed task graphs to multiprocessors. ACM Computing [9] Intel Threading Building Blocks. http://www. Surveys, 31(4):406–471, 1999 threadingbuildingblocks.org/ [2] Cassavant. T. and J.A. Kuhl, 1988. Taxonomy of scheduling in [10] OpenMP Architecture Review Board. OpenMP Application general purpose distributed memory systems. IEEE Trans. Software Program Interface Version 3.0, 2008. http://www.openmp.org/p- Engg., 14: 141-154. documents/spec30.pdf. [3] E. Ilavarasan and P. Thambidurai , 2007.Low Complexity [11] Y. Xia and V. K. Prasanna, “Collaborative scheduling of dag Performance Effective Task Scheduling Algorithm for Heterogeneous structured computations on multi-core processors,” in Conference Computing Environments , Journal of Computer Sciences 3 (2): Computing Frontiers, 2010, pp. 63–72. 94-103, 2007 [12] http://www.kasahara.elec.waseda.ac.jp/schedule/ [4] T. Hagras, J. Janeèek . Static vs. Dynamic List-Scheduling [13] M. Wu and D. D. Gajski, “Hypertool: A programming aid for Performance Comparison , Acta Polytechnica Vol. 43 No. 6/2003 message-passing systems,” IEEE Trans. Parallel and Distributed [5] Kwok Y., Ahmed I. Benchmarking the Task Graph Scheduling Systems, vol. 1, pp. 330–343, July 1990. Algorithms. Proc. IPPS/SPDP, 1998. [14] Qin Zheng, “Dynamic adaptation of DAGs with uncertain [6] F. Song, A. YarKhan, and J. J. Dongarra. Dynamic task scheduling execution times in heterogeneous computing systems”, IPDPS for linear algebra algorithms on distributed- memory multi-core Workshops 2010 . systems. Technical Report UT-CS-09-638, Computer Sciencee [15] Maruf Ahmed, Sharif M. H. Chowdhury, Masud Hasan, “Fast Department, University of Tennessee, 2009. Preemptive Task Scheduling Algorithm for Homogeneous and [7] R. D. Blumofe, C. F. Joerg, B. C. Kuszmaul, C. E. Leiserson, K. Heterogeneous Distributed Memory Systems”. SNPD 2008: 720- H. Randall, and Y. Zhou. “Cilk: An efficient multi threaded runtime 725 system. In Principles and Practice of Parallel Programming”, [16] H. Orsila, T. Kangas, T. D. Hminen, “Hybrid Algorithm for Proceedings of the fifth ACM SIG- PLAN symposium on Principles Mapping Static Task Graphs on Multiprocessor SoCs”, and Practice of Parallel Programming, PPOPP’95, pages 207– 216, International Symposium on System-on-Chip (SoC 2005), pp. 146- Santa Barbara, CA, July 19-21 1995. ACM. DOI: 10.1145/ 150, 2005. 209936.209958. © 2012 ACEEE 41 DOI: 01.IJIT.02.01. 528