Task Assignment Algorithm Based on Trust in Volunteer Computing Platforms
Abstract
:1. Introduction
2. Related Work
2.1. Task Assignment in Other Distributed Computing Systems
2.2. Task Assignment in Volunteer Computing Platforms
3. Task Assignment Problem
3.1. Problem Description
3.2. Reliability Model
4. Algorithm Description
4.1. The EFTT (Earliest Finish Task Based on Trust) Algorithm
- Principle 1 (confidence interval preference principle) since the volunteer node is often disconnected, which will make a turnaround time of a task become slower. To reduce its impact, the EFTT algorithm selects the confidence interval first to assign the task.
- Principle 2 (task allocation principle) to ensure that the prerequisite task has been completed when task starts to be executed, the EFTT algorithm first schedules all the computing resources to calculate task . In this way, task will be divided into equal parts, is the number of online volunteer nodes, and each volunteer node is assigned a time interval to calculate task The size of each time interval is .
Algorithm 1 The EFTT algorithm |
Input: volunteer node set V, task set T and corresponding TAG, the current time Output: task assignment set
|
4.2. The IEFTT (Improved Earliest Finish Task Based on Trust) Algorithm
Algorithm 2 The IEFTT algorithm |
Input: task set T and its corresponding TAG at time , the volunteer set V the number set V is Output: task assignment
|
Algorithm 3 The task slice function ComTSet (Vn.con,R,|V|,T’) |
Input: the total computing time of time period n is Vn.con, task execution order set R, the number of the volunteer nodes, the current task set to be executed Output: the size of task slice ,
|
5. Experimental Evaluation
5.1. Experimental Results and Analysis on Static Task Sets
- The task set scale which is the number of tasks included in the task set T.
- The average size of tasks in task set T measured by the number of task input file fragments.
5.1.1. The Impact of Average Size of Tasks
5.1.2. The Impact of Task Set Scale
5.1.3. The Impact of the Number of Volunteer Nodes
5.2. Experimental Results and Analysis on Dynamic Task Sets
6. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Anderson, D.P. BOINC: A Platform for Volunteer Computing. arXiv 2019, arXiv:1903.01699. [Google Scholar]
- Anderson, D.P.; Cobb, J.; Korpela, E.; Lebofsky, M.; Werthimer, D. SETI@home: An experiment in public-resource computing. Commun. ACM 2002, 45, 56–61. [Google Scholar] [CrossRef]
- Beberg, A.L.; Ensign, D.L.; Jayachandran, G.; Khaliq, S.; Pande, V.S. Folding@home: Lessons From Eight Years of Volunteer Distributed Computing. In Proceedings of the 2009 IEEE International Symposium on Parallel & Distributed Processing, Rome, Italy, 23–29 May 2009. [Google Scholar]
- Adambourdarios, C.; Wu, W.; Cameron, D.; Lancon, E.; Filipčič, A. ATLAS@Home: Harnessing Volunteer Computing for HEP; IOP Publishing: Bristol, UK, 2015. [Google Scholar]
- Filep, L. Model for Improved Load Balancing in Volunteer Computing Platforms. In Proceedings of the European, Mediterranean, and Middle Eastern Conference on Information Systems, Limassol, Cyprus, 4–5 October 2018; pp. 131–143. [Google Scholar]
- Javadi, B.; Matawie, K.; Anderson, D.P. Modeling and analysis of resources availability in volunteer computing systems. In Proceedings of the 2013 IEEE 32nd International Performance Computing and Communications Conference (IPCCC), San Diego, CA, USA, 6–8 December 2013. [Google Scholar]
- Guler, H.; Cambazoglu, B.B.; Ozkasap, O. Task allocation in volunteer computing networks under monetary budget constraint. Peer-to-Peer Netw. Appl. 2015, 8, 938–951. [Google Scholar] [CrossRef]
- Ghafarian, T.; Deldari, H.; Javadi, B. CycloidGrid: A proximity-aware P2P-based resource discovery architecture in volunteer computing systems. Future Gener. Comput. Syst. 2013, 29, 1583–1595. [Google Scholar] [CrossRef]
- Ghafarian, T.; Javadi, B. Cloud-aware data intensive workflow scheduling on volunteer computing systems. Future Gener. Comput. Syst. 2015, 51, 87–97. [Google Scholar] [CrossRef]
- Watanabe, K.; Fukushi, M.; Horiguchi, S. Optimal spot-checking to minimize the computation time in volunteer computing. In Proceedings of the 22nd IEEE International Symposium on Parallel and Distributed Processing, Miami, FL, USA, 14–18 April 2008. [Google Scholar]
- Heien, E.M.; Anderson, D.P.; Hagihara, K. Computing Low Latency Batches with Unreliable Workers in Volunteer Computing Environments. J. Grid Comput. 2009, 7, 501–518. [Google Scholar] [CrossRef] [Green Version]
- Lee, Y.C.; Zomaya, A.Y.; Siegel, H.J. Robust task scheduling for volunteer computing systems. J. Supercomput. 2010, 53, 163–181. [Google Scholar] [CrossRef]
- Shatz, S.M.; Wang, J.P.; Goto, M. Task allocation for maximizing reliability of distributed computer systems. IEEE Trans. Comput. 1992, 41, 1156–1168. [Google Scholar] [CrossRef]
- Sebastio, S.; Gnecco, G.; Bemporad, A. Optimal distributed task scheduling in volunteer clouds. Comput. Oper. Res. 2017, 81, 231–246. [Google Scholar] [CrossRef]
- Maheswaran, M.; Siegel, H.J. A dynamic matching and scheduling algorithm for heterogeneous computing systems. In Proceedings of the Seventh Heterogeneous Computing Workshop (HCW’98), Orlando, FL, USA, 30 March 1998; pp. 57–69. [Google Scholar]
- Topcuoglu, H.; Hariri, S.; Wu, M.Y. Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans. Parallel Distrib. Syst. 2002, 13, 260–274. [Google Scholar] [CrossRef]
- Blythe, J.; Jain, S.; Deelman, E. Task scheduling strategies for workflow-based applications in grids. In Proceedings of the CCGrid 2005. IEEE International Symposium on Cluster Computing and the Grid, Wales, UK, 9–12 May 2005; pp. 759–767. [Google Scholar]
- Braun, T.D.; Siegel, H.J.; Beck, N. A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. J. Parallel Distrib. Comput. 2001, 61, 810–837. [Google Scholar] [CrossRef]
- Sahni, J.; Vidyarthi, D. A Cost-Effective Deadline-Constrained Dynamic Scheduling Algorithm for Scientific Workflows in a Cloud Environment. IEEE Trans. Cloud Comput. 2015, 6, 2–18. [Google Scholar] [CrossRef]
- Liu, T.; Liu, Y.; Song, P. DScheduler: Dynamic Network Scheduling Method for MapReduce in Distributed Controllers. In Proceedings of the IEEE International Conference on Parallel Distributed Systems, Wuhan, China, 13–16 December 2017. [Google Scholar]
- Kartik, S.; Murthy, C.S.R. Task allocation algorithms for maximizing reliability of distributed computing systems. IEEE Trans. Comput. 1997, 46, 719–724. [Google Scholar] [CrossRef]
- Mahmood, A. Task allocation algorithms for maximizing reliability of heterogeneous distributed computing systems. Control Cybern. 2001, 30, 115–130. [Google Scholar]
- Kang, Q.; He, H.; Wei, J. An effective iterated greedy algorithm for reliability-oriented task allocation in distributed computing systems. J. Parallel Distrib. Comput. 2013, 73, 1106–1115. [Google Scholar] [CrossRef]
- Salehi, M.A.; Smith, J.; Maciejewski, A.A. Stochastic-based robust dynamic resource allocation for independent tasks in a heterogeneous computing system. J. Parallel Distrib. Comput. 2016, 97, 96–111. [Google Scholar] [CrossRef] [Green Version]
- Panda, S.K.; Jana, P.K. Load balanced task scheduling for cloud computing: A probabilistic approach. Knowl. Inf. Syst. 2019. [Google Scholar] [CrossRef]
- Xiao, M.; Wu, J.; Huang, L. Multi-task assignment for crowdsensing in mobile social networks. In Proceedings of the 2015 IEEE Conference on Computer Communications (INFOCOM), Kowloon, Hong Kong, China, 26 April–1 May 2015; pp. 2227–2235. [Google Scholar]
- Buyya, R.; Murshed, M. Gridsim: A toolkit for the modeling and simulation of distributed resource management and scheduling for grid computing. Concurr. Comput. Pract. Exp. 2002, 14, 1175–1220. [Google Scholar] [CrossRef]
- Anderson, D.P.; McLeod, J. Local scheduling for volunteer computing. In Proceedings of the 2007 IEEE International Parallel and Distributed Processing Symposium, Rome, Italy, 26–30 March 2007; pp. 1–8. [Google Scholar]
- Kondo, D.; Anderson, D.P.; Vii, J.M.L. Performance evaluation of scheduling policies for volunteer computing. In Proceedings of the Third IEEE International Conference on e-Science and Grid Computing (e-Science 2007), Bangalore, India, 10–13 December 2007; pp. 415–422. [Google Scholar]
- Anderson, D.P. Emulating volunteer computing scheduling policies. In Proceedings of the 2011 IEEE International Parallel Distributed Processing Symposium Workshops and PhD Forum, Shanghai, China, 16–20 May 2011; pp. 1839–1846. [Google Scholar]
- Javadi, B.; Kondo, D.; Vincent, J.M. Discovering statistical models of availability in large distributed systems: An empirical study of seti@ home. IEEE Trans. Parallel Distrib. Syst. 2011, 22, 1896–1903. [Google Scholar] [CrossRef]
- Essafi, A.; Trystram, D.; Zaidi, Z. An efficient algorithm for scheduling jobs in volunteer computing platforms. In Proceedings of the Parallel Distributed Processing Symposium Workshops (IPDPSW), Phoenix, AZ, USA, 19–23 May 2014; pp. 68–76. [Google Scholar]
- Bazinet, A.L.; Cummings, M.P. Subdividing Long-Running, Variable-Length Analyses Into Short, Fixed-Length BOINC Workunits. J. Grid Comput. 2016, 14, 1–13. [Google Scholar] [CrossRef]
- Xu, L.; Qiao, J.; Lin, S.; Zhang, W. Dynamic Task Scheduling Algorithm with Deadline Constraint in Heterogeneous Volunteer Computing Platforms. Future Internet 2019, 11, 121. [Google Scholar] [CrossRef]
- Inoue, H.; Moriyama, T.; Komatsu, H.; Nakatani, T. AA-sort: A new parallel sorting algorithm for multi-core SIMD processors. In Proceedings of the 16th International Conference on Parallel Architecture and Compilation Techniques, Brasov, Romania, 15–19 September 2007; pp. 189–198. [Google Scholar]
Notation | Notation Meaning |
---|---|
T | The set of tasks |
The ith task of the set T | |
V | The set of volunteer nodes |
The jth volunteer node of the set V | |
The number of nodes in the set V | |
The node contributes hours | |
The trust value of the node | |
The completion time needed of | |
The confidence interval of the node | |
the ratio of the actual availability time of node v to its expected availability time | |
the probability of different ratios | |
the total time assigned to the node |
Parameter | Default | Value Range |
---|---|---|
average size of tasks(MB) | 128 | 64–320 |
task set scale | 500 | 200–1000 |
number of VN | 1000 | 750–1500 |
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Xu, L.; Qiao, J.; Lin, S.; Qi, R. Task Assignment Algorithm Based on Trust in Volunteer Computing Platforms. Information 2019, 10, 244. https://doi.org/10.3390/info10070244
Xu L, Qiao J, Lin S, Qi R. Task Assignment Algorithm Based on Trust in Volunteer Computing Platforms. Information. 2019; 10(7):244. https://doi.org/10.3390/info10070244
Chicago/Turabian StyleXu, Ling, Jianzhong Qiao, Shukuan Lin, and Ruihua Qi. 2019. "Task Assignment Algorithm Based on Trust in Volunteer Computing Platforms" Information 10, no. 7: 244. https://doi.org/10.3390/info10070244
APA StyleXu, L., Qiao, J., Lin, S., & Qi, R. (2019). Task Assignment Algorithm Based on Trust in Volunteer Computing Platforms. Information, 10(7), 244. https://doi.org/10.3390/info10070244