In this thesis, we investigate two important issues, task ranking and task allocation, in workflow scheduling and make three contributions. First, we also deal with online multi-workflow scheduling issue, which is becoming even more important in modern shared parallel computing platforms, e.g. cluster, grid, and cloud. Second, in contrast to previous task ranking methods which are based on a single path-oriented concept, our task ranking mechanism was developed with innovative ideas. The bottom amount rank is a dependent workload-oriented approach, being more capable of representing the amount of remaining workload depending on a task than the widely used bottom rank, calculated based on the concept of path. This feature is found to be especially useful for scheduling workflows of fork-join structure in the experiments. The proposed allocated top+bottom rank is a dual mechanism, which ranks critical tasks and non-critical tasks in two different ways, in contrast to previous approaches which rank all tasks based on a single criterion. The approach tries to make a balance between two philosophies: giving higher priority to tasks on critical paths and ranking a task according to the amount of remaining workload depending on it. Third, for task group allocation in clustering-based workflow scheduling, we propose an adaptive subgroup allocation mechanism which partitions a task group into several subgroups for individual allocation adaptively based on each join node. This arrangement gives flexibility to the allocation of join nodes while retaining most benefits of clustering-based methods, and is shown to achieve better workflow execution performance. We conducted a series of simulation experiments for extensive performance evaluation of the proposed approaches and compared them to previous methods in the literature. The experimental results show that our
References
[1] L. F. Bittencourt, R. Sakellariou, E. R. M. Madeira, “DAG Scheduling Using a Lookahead Variant of the Heterogeneous Earliest Finish Time Algorithm”, Proceedings of the 18th Euromicro Conference on Parallel, Distributed and Network-based Processing, 2010.
[2] M.R. Gary and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman and Company, 1979.
[3] M. Wieczorek, R. Prodan, A. Hoheisel, M. Wieczorek, R. Prodan, A. Hoheisel,
“Taxonomies of the Multi-Criteria Grid Workflow Scheduling Problem”, Grid middleware and services, pp. 237-264, 2008.
[4] L.F. Bittencourt, E.R.M. Madeira, “A Performance-Oriented Adaptive Scheduler for Dependent Tasks on Grids”, Concurrency and Computation: Practice and Experience vol. 20, pp. 1029–1049, 2008.
[5] L.F. Bittencourt, E.R.M. Madeira, F.R.L Cicerre, L.E. Buzato, “A path clustering heuristic for scheduling task graphs onto a grid”, Proceedings of the 3rd ACM International Workshop on Middleware for Grid Computing, Grenoble, France, 2005.
[6] T. Yang and A. Gerasoulis, “DSC: Scheduling Parallel Tasks on an Unbounded Number of Processors”, IEEE Transactions on Parallel and Distributed Systems, vol. 5, no. 9, pp. 951-967, Sept. 1994.
[7] J. Liou and M.A. Palis, “An Efficient Clustering Heuristic for Scheduling DAGs on Multiprocessors”, Proceedings of the 8th Symposium. Parallel and Distributed
Processing, 1996.
[8] S. J. Kim and J.C. Browne, “A General Approach to Mapping of Parallel Computation upon Multiprocessor Architectures”, Proceedings of Int’l Conf. Parallel Processing, vol.
2, pp. 1-8, 1988.
[9] M. Wu and D. Gajski. “Hypertool: A Programming Aid for Message Passing Systems”, Proc.IEEE Transactions on Parallel and Distributed Systems, vo.l, no.1, pp. 330-343, July 1990.
[10] H. Topcuoglu, S. Hariri, M. Y. Wu, “Performance-effective and low-complexity task scheduling for heterogeneous computing”, IEEE Transactions on Parallel and Distributed Systems, vol.13 no.3, pp260-274, 2002.
[11] G. Park, B. Shirazi, and J. Marquis, “DFRN: A New Approach for Duplication Based Scheduling for Distributed Memory Multi-processor Systems”, Proceedings of International Conference of Parallel Processing, pp. 157-166, 1997.
[12] O. Sinnen, Task Scheduling for Parallel Systems, John Wiley, 2007.
[13] A. Gerasoulis, T. Yang, “On the Granularity and Clustering of Directed Acyclic Task Graphs”, Proceedings of IEEE Transactions on Parallel and Distributed Systems, 4(6):686-701, Jun, 1993.
[14] V. Sarkar (1989), “Partitioning and Scheduling Parallel Programs for Execution on Multiprocessors”, Journal of MIT Press, 1989.
[15] A. Gerasoulis, T. Yang, “A Comparison of Clustering Heuristics for Scheduling DAGs on Multiprocessors”, Journal of Parallel and Distributed Computing, 16(4):276-291, Dec, 1992.
[16] G. L. Stavrinides, H. D. Karatza, “Scheduling Multiple Task Graphs in Heterogeneous Distributed Real-TimeSystems by Exploiting Schedule Holes with Bin Packing Techniques”, Simulation Modelling Practice and Theory, vol. 19, issue. 1, pp. 540-552, January 2011.
[17] Y. L. Tsai, K. C. Huang, H. Y. Chang, J. Ko, E. T. Wang, C. H. Hsu, “Scheduling Multiple Scientific and Engineering Workflows through Task Clustering and Best-Fit Allocation”, Proceedings of 2012 IEEE Eighth World Congress on Services, June 24- 29, 2012.
[18] L. F. Bittencourt and E. R. M. Madeira, “Fulfilling Task Dependence Gaps for Workflow Scheduling on Grids”, Proceedings of the 3rd IEEE International Conference on Signal-Image Technology and Internet Based Systems (SITIS), Dec, 2007.
[19] S. Bharathi, A. Chervenak, E. Deelman, G. Mehta, M.H. Su, K. Vahi, “Characterization of scientific workflows”, Proceedings of 3rd workshop on workflows in support of large-scale science, Nov, 2008.
[20] L. F. Bittencourt and E. R. M. Madeira, “Towards the scheduling of multiple workflows on computational grids”, Journal of Grid Compute 8(3): 419-441, 2010.
[21] C. H. Hsu, C.W. Hsieh, C. T. Yang, “A generalized critical task anticipation technique for DAG scheduling”, Proceedings of ICA3PP 2007, pp. 493–505, 2007.
[22] ASKALON (2015) http://www.dps.uibk.ac.at/projects/teuta/
[23] DAGman (2015) http://www.cs.wisc.edu/condor/manual/
[24] Gridbus (2015) http://www.cloudbus.org/workflow/
[25] Pegasus (2015) http://pegasus.isi.edu/
[26] Business Process Execution Language (BPEL) (2015)
http://en.wikipedia.org/wiki/Business_Process_Execution_Language
[27] F. R. L. Cicerre, E. R. M. Madeira, L. E. Buzato, “A hierarchical process execution support for grid computing”, Concur. Comput. Pract. Exper, vol. 18, no. 6, pp. 581–594, May, 2006.
[28] K. C. Huang, Y. L. Tsai, H. C. Liu, “Task ranking and allocation in list-based workflow scheduling on parallel computing platform”, The Journal of Supercomputing vol. 71, issue. 1, pp. 217-240, January, 2015
[29] H. Zhao, R. Sakellarious, “Scheduling multiple DAGs onto heterogeneous systems”, Proceedings of the 20th international conference on parallel and distributed processing, 2006
[30] C. C. Hsu, K. C. Huang, F. J. Wang, “Online scheduling of workflow applications in grid environments”, Future Generation Computer System, vol. 27, issue. 6, pp. 860–870, May, 2011
[31] A. Hirales-Carbajal, A. Tchernykh, R. Yahyapour, J. L. González-García, T. Röblitz, J.
M. Ramírez-Alcaraz, “Multiple workflow scheduling strategies with user run time estimates on a grid”, Journal of Grid Computing, vol. 10, issue. 2, pp. 325-346, June, 2012
[32] P. C. Mu, J. F. Nezan, M. Raulet, “A list scheduling heuristic with new node priorities and critical child technique for task scheduling with communication contention”, Algorithm-Architecture Matching for Signal and Image Processing, Lecture Notes in Electrical Engineering, vol. 73, pp. 217-236, 2011
[33] R. Garg, A. K. Singh, “Multi-objective workflow grid scheduling using ε-fuzzy dominance sort based discrete particle swarm optimization”, The Journal of Supercomputing archive, vol. 68, issue. 2, pp. 709-732, May, 2014
[34] E. Deelman, G. Singh, C. Kesselman, “Optimizing grid-based workflow execution”, Journal of Grid Computing, vol. 3, issue. 3-4, pp. 201-219, Sep, 2005
[35] S. Adabi, A. Movaghar, A. M. Rahmani, “Bi-level fuzzy based advanced reservation of Cloud workflow applications on distributed Grid resources”, The Journal of Supercomputing, vol. 67, issue. 1, pp. 175-218, 2014