MOPT: list-based heuristic for scheduling workflows in cloud environment

  • Samia IjazEmail author
  • Ehsan Ullah Munir


Cloud computing is a popular and widely adopted computing platform for the execution of scientific workflows as it provides flexible infrastructure and offers access to collection of autonomous heterogeneous resources. Effective scheduling of computationally complex workflows which contain many interconnected tasks is a complex problem and becomes more challenging in cloud environment. Optimal solutions can be obtained by considering not only the heterogeneity of computation costs involved, but also by taking into account the communication costs among the tasks in a way that schedule length of the application is reduced. In this paper, we propose a list scheduling heuristic, namely minimal optimistic processing time (MOPT), with optimized duplication approach. The additional feature is introduced for the entry task and is applied only in scenarios in which duplication is more practical and effective. The prioritization phase of the proposed work is based on an optimistic processing time matrix that is used for ranking of the tasks. The algorithm has same time complexity as state-of-the-art existing algorithms, but notable improvements are acquired in terms of makespan and other performance evaluation parameters. Extensive experimental analysis of the proposed algorithm is carried out using synthesized graphs and graphs from the real-world applications. The results prove that MOPT achieves quality schedules with reduced makespans. As communication cost among the tasks grows higher, performance of the proposed algorithm becomes more effective, thus providing the evidence that the MOPT algorithm is well-suited for communication-intensive applications.


Cloud computing Workflow scheduling DAG Static scheduling Makespan 


  1. 1.
    Ahmad SG, Liew CS, Rafique MM, Munir EU (2017) Optimization of data-intensive workflows in stream-based data processing models. J Supercomput 73(9):3901–3923CrossRefGoogle Scholar
  2. 2.
    Akbari M, Rashidi H (2016) A multi-objectives scheduling algorithm based on cuckoo optimization for task allocation problem at compile time in heterogeneous systems. Expert Syst Appl 60:234–248CrossRefGoogle Scholar
  3. 3.
    Akbari M, Rashidi H, Alizadeh SH (2017) An enhanced genetic algorithm with new operators for task scheduling in heterogeneous computing systems. Eng Appl Artif Intell 61:35–46CrossRefGoogle Scholar
  4. 4.
    AlEbrahim S, Ahmad I (2017) Task scheduling for heterogeneous computing systems. J Supercomput 73(6):2313–2338CrossRefGoogle Scholar
  5. 5.
    Alkhanak EN, Lee SP, Rezaei R, Parizi RM (2016) Cost optimization approaches for scientific workflow scheduling in cloud and grid computing: a review, classifications, and open issues. J Syst Softw 113:1–26CrossRefGoogle Scholar
  6. 6.
    Arabnejad H, Barbosa JG (2014) List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Trans Parallel Distrib Syst 25(3):682–694CrossRefGoogle Scholar
  7. 7.
    Bochenina K, Butakov N, Boukhanovsky A (2016) Static scheduling of multiple workflows with soft deadlines in non-dedicated heterogeneous environments. Future Gener Comput Syst 55:51–61CrossRefGoogle Scholar
  8. 8.
    Casas I, Taheri J, Ranjan R, Wang L, Zomaya AY (2017) A balanced scheduler with data reuse and replication for scientific workflows in cloud computing systems. Future Gener Comput Syst 74:168–178CrossRefGoogle Scholar
  9. 9.
    Chirkin AM, Belloum AS, Kovalchuk SV, Makkes MX, Melnik MA, Visheratin AA, Nasonov DA (2017) Execution time estimation for workflow scheduling. Future Gener Comput Syst 75:376–387CrossRefGoogle Scholar
  10. 10.
    Choudhary A, Gupta I, Singh V, Jana PK (2018) A GSA based hybrid algorithm for bi-objective workflow scheduling in cloud computing. Future Gener Comput Syst 83:14–26CrossRefGoogle Scholar
  11. 11.
    El-Rewini H, Lewis TG (1990) Scheduling parallel program tasks onto arbitrary target machines. J Parallel Distrib Comput 9(2):138–153CrossRefGoogle Scholar
  12. 12.
    Garg R, Singh AK (2015) Adaptive workflow scheduling in grid computing based on dynamic resource availability. Eng Sci Technol Int J 18(2):256–269CrossRefGoogle Scholar
  13. 13.
    Ghosh TK, Das S, Barman S, Goswami R (2017) A comparison between genetic algorithm and cuckoo search algorithm to minimize the makespan for grid job scheduling. In: Advances in Computational Intelligence: Proceedings of International Conference on Computational Intelligence 2015, Springer, pp 141–147Google Scholar
  14. 14.
    Gogos C, Valouxis C, Alefragis P, Goulas G, Voros N, Housos E (2016) Scheduling independent tasks on heterogeneous processors using heuristics and column pricing. Future Gener Comput Syst 60:48–66CrossRefGoogle Scholar
  15. 15.
    Guzek M, Bouvry P, Talbi EG (2015) A survey of evolutionary computation for resource management of processing in cloud computing [review article]. IEEE Comput Intell Mag 10(2):53–67CrossRefGoogle Scholar
  16. 16.
    Hagras T, Janecek J (2003) A simple scheduling heuristic for heterogeneous computing environments. In: IEEE, p 104Google Scholar
  17. 17.
    Hagras T, Janecek J (2004) A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems. In: Proceedings of the 18th International Parallel and Distributed Processing Symposium 2004, IEEE, p 107Google Scholar
  18. 18.
    Harkut D, Agrawal AM (2014) Comparison of different task scheduling algorithms in RTOS: a survey. Int J 4(7):1236–1240Google Scholar
  19. 19.
    Ilavarasan E, Thambidurai P, Mahilmannan R (2005) High performance task scheduling algorithm for heterogeneous computing system. In: International Conference on Algorithms and Architectures for Parallel Processing, Springer, pp 193–203Google Scholar
  20. 20.
    Ilavarasan E, Thambidurai P, Mahilmannan R (2005) Performance effective task scheduling algorithm for heterogeneous computing system. In: The ISPDC 2005 4th International Symposium on Parallel and Distributed Computing, 2005, IEEE, pp 28–38Google Scholar
  21. 21.
    Jiang Q, Lee YC, Arenaz M, Leslie LM, Zomaya AY (2014) Optimizing scientific workflows in the cloud: a Montage example. In: Proceedings of the 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing, IEEE Computer Society, pp 517–522Google Scholar
  22. 22.
    Kanemitsu H, Hanada M, Nakazato H (2016) Clustering-based task scheduling in a large number of heterogeneous processors. IEEE Trans Parallel Distrib Syst 27(11):3144–3157CrossRefGoogle Scholar
  23. 23.
    Kliazovich D, Pecero JE, Tchernykh A, Bouvry P, Khan SU, Zomaya AY (2016) Ca-dag: modeling communication-aware applications for scheduling in cloud computing. J Grid Comput 14(1):23–39CrossRefGoogle Scholar
  24. 24.
    Liu J, Pacitti E, Valduriez P, De Oliveira D, Mattoso M (2016) Multi-objective scheduling of scientific workflows in multisite clouds. Future Gener Comput Syst 63:76–95CrossRefGoogle Scholar
  25. 25.
    Masdari M, ValiKardan S, Shahi Z, Azar SI (2016) Towards workflow scheduling in cloud computing: a comprehensive analysis. J Netw Comput Appl 66:64–82CrossRefGoogle Scholar
  26. 26.
    Mei J, Li K, Li K (2014) Energy-aware task scheduling in heterogeneous computing environments. Cluster Comput 17(2):537–550CrossRefGoogle Scholar
  27. 27.
    Mei J, Li K, Li K (2014) A resource-aware scheduling algorithm with reduced task duplication on heterogeneous computing systems. J Supercomput 68(3):1347–1377CrossRefGoogle Scholar
  28. 28.
    Munir EU, Mohsin S, Hussain A, Nisar MW, Ali S (2013) Sdbats: a novel algorithm for task scheduling in heterogeneous computing systems. In: 2013 IEEE 27th International Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), IEEE, pp 43–53Google Scholar
  29. 29.
    Rahman M, Venugopal S, Buyya R (2007) A dynamic critical path algorithm for scheduling scientific workflow applications on global grids. In: IEEE International Conference on e-Science and Grid Computing, IEEE, pp 35–42Google Scholar
  30. 30.
    Shishido HY, Estrella JC, Toledo CFM, Arantes MS (2017) Genetic-based algorithms applied to a workflow scheduling algorithm with security and deadline constraints in clouds. Comput Electr Eng 69:378–394CrossRefGoogle Scholar
  31. 31.
    Smanchat S, Viriyapant K (2015) Taxonomies of workflow scheduling problem and techniques in the cloud. Future Gener Comput Syst 52:1–12CrossRefGoogle Scholar
  32. 32.
    Stavrinides GL, Duro FR, Karatza HD, Blas JG, Carretero J (2017) Different aspects of workflow scheduling in large-scale distributed systems. Simul Model Pract Theory 70:120–134CrossRefGoogle Scholar
  33. 33.
    Tang Q, Wu SF, Shi JW, Wei JB (2017) Optimization of duplication-based schedules on network-on-chip based multi-processor system-on-chips. IEEE Trans Parallel Distrib Syst 28(3):826–837CrossRefGoogle Scholar
  34. 34.
    Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. J Parallel Distrib Comput 70(4):323–329CrossRefGoogle Scholar
  35. 35.
    Tomás L, Caminero AC, Carrión C, Caminero B (2011) Network-aware meta-scheduling in advance with autonomous self-tuning system. Future Gener Comput Syst 27(5):486–497CrossRefGoogle Scholar
  36. 36.
    Topcuoglu H, Hariri S, Wu My (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274CrossRefGoogle Scholar
  37. 37.
    Wang L, Khan SU, Chen D, Kołodziej J, Ranjan R, Xu CZ, Zomaya A (2013) Energy-aware parallel task scheduling in a cluster. Future Gener Comput Syst 29(7):1661–1670CrossRefGoogle Scholar
  38. 38.
    Wang X, Huang H, Deng S (2012) List scheduling algorithm for static task with precedence constraints for cyber-physical systems. Acta Autom Sin 38(11):1870–1879CrossRefGoogle Scholar
  39. 39.
    Wu F, Wu Q, Tan Y (2015) Workflow scheduling in cloud: a survey. J Supercomput 71(9):3373–3418CrossRefGoogle Scholar
  40. 40.
    Xu H, Yang B, Qi W, Ahene E (2016) A multi-objective optimization approach to workflow scheduling in clouds considering fault recovery. KSII Trans Internet Inf Syst (TIIS) 10(3):976–995Google Scholar
  41. 41.
    Xu Y, Li K, Hu J, Li K (2014) A genetic algorithm for task scheduling on heterogeneous computing systems using multiple priority queues. Inf Sci 270:255–287MathSciNetCrossRefGoogle Scholar
  42. 42.
    Yang B, Tan F, Dai YS (2013) Performance evaluation of cloud service considering fault recovery. J Supercomput 65(1):426–444CrossRefGoogle Scholar
  43. 43.
    Yazdani S, Nezamabadi-pour H, Kamyab S (2014) A gravitational search algorithm for multimodal optimization. Swarm Evol Comput 14:1–14CrossRefGoogle Scholar
  44. 44.
    Zhang F, Cao J, Li K, Khan SU, Hwang K (2014) Multi-objective scheduling of many tasks in cloud platforms. Future Gener Comput Syst 37:309–320CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computer ScienceCOMSATS University IslamabadWah CampusPakistan

Personalised recommendations