Abstract
Heterogeneous multiprocessors have become the mainstream computing platforms nowadays and are increasingly employed for critical applications. Inherently, heterogeneous systems are more complex than homogeneous systems. The added complexity increases the potential of system failures. This paper addresses this problem by proposing a reliability-guaranteed task assignment and scheduling approach for heterogeneous multiprocessors considering timing constraint. We propose a two-phase approach to solve this problem. In the first phase, we determine assignments for heterogeneous multiprocessors such that both reliability requirement and timing constraint can be satisfied with the minimum total system cost. Efficient algorithms are proposed to produce optimal solutions for simple-path and tree-structured task graphs in polynomial time. When the input graph is a directed acyclic graph (DAG), the task assignment problem is NP-Complete. In this situation, we first develop an Integer Linear Programming (ILP) formulation to generate optimal solutions. Then, we propose a polynomial-time heuristic algorithm to find near optimal solutions. In the second phase, based on the assignments obtained in the first phase, we propose a minimum resource scheduling algorithm to generate a schedule and a feasible configuration that uses as little resource as possible. Experimental results show that the proposed algorithms and the ILP formulation can effectively reduce the total cost compared with the previous work.
Similar content being viewed by others
References
Nvidia provides second quarter fiscal 2009 business update. http://www.nvidia.com/object/io_1215037160521.html.
Ahmad, I., & Dhodhi, M. (2006). Task assignment using a problem-space genetic algorithm. Concurrency: Practice and Experience, 7 (5), 411–428.
Andersson, B., Raravi, G., Bletsas, K. (2010). Assigning real-time tasks on heterogeneous multiprocessors with two unrelated types of processors. In: 2010 IEEE 31st Real-Time Systems Symposium (RTSS), (pp. 239–248).
Borkar, S. (2005). Designing reliable systems from unreliable components: the challenges of transistor variability and degradation. IEEE Microbiology, 25 (6), 10–16.
Braun, T.D., Siegel, H.J., Beck, N., Bölöni, L.L., Maheswaran, M., Reuther, A.I., Robertson, J.P., Theys, M.D., Yao, B., Hensgen, D., et al. (2001). A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. Journal of Parallel and Distributed Computing, 61 (6), 810–837.
Bultan, T., & Aykanat, C. (1992). A new mapping heuristic based on mean field annealing. Journal of Parallel and Distributed Computing, 4, 292–305.
Chang, P., Wu, I., Shann, J., Chung, C. (2008). Etahm : An energy-aware task allocation algorithm for heterogeneous multiprocessor. In: 45th ACM/IEEE Design Automation Conference, 2008, (pp. 776–779).
Chen, G., & Yur, J. (1990). A branch-and-bound-with-underestimates algorithm for the task assignment problem with precedence constraint. In: Proceedings of 10th International Conference on Distributed Computing Systems, 1990 , (pp. 494–501).
Chiu, C., Hsu, C., Yeh, Y. (2006). A genetic algorithm for reliability-oriented task assignment with k duplications in distributed systems. IEEE Transactions on Reliability, 55 (1), 105–117.
Chiu, C., Yeh, Y., Chou, J. (2002). A fast algorithm for reliability-oriented task assignment in a distributed system. Computer Communications, 25 (17), 1622–1630.
Dick, R., Rhodes, D., Wolf, W. (1998). Tgff: Task graphs for free. In: Proceedings of the 6th International Workshop on Hardware/Software Codesign, (pp. 97–101).
Funk, S., & Baruah, S. (2005). Task assignment on uniform heterogeneous multiprocessors. In: Proceedings of the 17th Euromicro Conference on Real-Time Systems, 2005, (ECRTS 2005). . IEEE, (pp. 219–226)
Goh, L.K., Veeravalli, B., Viswanathan, S. (2009). Design of fast and efficient energy-aware gradient-based scheduling algorithms heterogeneous embedded multiprocessor systems. IEEE Transactions on Parallel and Distributed Systems, 20 (1), 1–12.
Hsu, H., Chen, J., Kuo, T. (2006). Multiprocessor synthesis for periodic hard real-time tasks under a given energy constraint. In: Proceedings of the Conference on Design, Automation and Test in Europe, (pp. 1061–1066).
Hwang, G., & Tseng, S. (1993). A heuristic task assignment algorithm to maximize reliability of a distributed system. IEEE Transactions on Reliability, 42 (1), 408–415.
Ibarra, O.H., & Kim, C.E. (1977). Heuristic algorithms for scheduling independent tasks on nonidentical processors. Journal of the ACM (JACM), 24 (2), 280–289.
Kafil, M., & Ahmad, I. (1998). Optimal task assignment in heterogeneous distributed computing systems. IEEE Concurrency, 6 (3), 42–50.
Kumar, R., Tullsen, D.M., Jouppi, N.P., Ranganathan, P. (2005). Heterogeneous chip multiprocessors. Computer, 38 (11), 32–38.
Li, D., & Wu, J. (2012). Energy-aware scheduling for frame-based tasks on heterogeneous multiprocessor platforms. In: 41st International Conference on Parallel Processing (ICPP), 2012. . IEEE, (pp. 430–439)
Li, W., Lim, A., Agrawal, P., Sahni, S. (1993). On the circuit implementation problem. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 12 (8), 1147–1156.
Luk, C.K., Hong, S., Kim, H. (2009). Qilin: exploiting parallelism on heterogeneous multiprocessors with adaptive mapping. In: 42nd Annual IEEE/ACM International Symposium on Microarchitecture, 2009, MICRO-42. . IEEE, (pp. 45–55)
Micheli, G.D. (1994). Synthesis and optimization of digital circuits. McGraw-Hill Higher Education.
Pham, D., Asano, S., Bolliger, M., Day, M.N., Hofstee, H.P., Johns, C., Kahle, J., Kameyama, A., Keaty, J., Masubuchi, Y., et al. (2005). The design and implementation of a first-generation cell processor. In: 2005 IEEE International Solid-State Circuits Conference, Digest of Technical Papers, 2005, ISSCC. . IEEE, (pp. 184–592)
Plank, J.S., & Elwasif, W.R. (1998). Experimental assessment of workstation failures and their impact on checkpointing systems. In: Twenty-Eighth Annual International Symposium on Fault-Tolerant Computing, 1998, Digest of Papers. . IEEE, (pp. 48–57)
Salcedo-Sanz, S., Xu, Y., Yao, X. (2006). Hybrid meta-heuristics algorithms for task assignment in heterogeneous computing systems. Computers & operations research, 33 (3), 820–835.
Shao, Z., Zhuge, Q., Xue, C., Sha, E.M. (2005). Efficient assignment and scheduling for heterogeneous dsp systems. IEEE Transactions on Parallel and Distributed Systems, 16 (6), 516–525.
Shatz, S., Wang, J., Goto, M. (1992). Task allocation for maximizing reliability of distributed computer systems. IEEE Transactions on Computers, 41 (9), 1156–1168.
Shatz, S.M., & Wang, J.P. (1989). Models and algorithms for reliability-oriented task-allocation in redundant distributed-computer systems. IEEE Transactions on Reliability, 38 (1), 16–27.
Shen, C.C., & Tsai, W.H. (1985). A graph matching approach to optimal task assignment in distributed computing systems using a minimax criterion. IEEE Transactions on Computers, 100 (3), 197–203.
Srinivasan, J., Adve, S.V., Bose, P., Rivers, J.A. (2004). The case for lifetime reliability-aware microprocessors. In: ACM SIGARCH Computer Architecture News, (Vol. 32,. . IEEE Computer Society, p. 276)
Sun, F., Jha, N.K., Ravi, S., Raghunathan, A. (2005). Synthesis of application-specific heterogeneous multiprocessor architectures using extensible processors. In: 18th International Conference on VLSI Design, 2005. . IEEE, (pp. 551–556)
Vigrass, W.J. (2010). Calculation of semiconductor failure rates. Harris Semiconductor.
Wang, L., Liu, J., Hu, J., Zhuge, Q., Sha, E. (2012). Optimal assignment for tree-structure task graph on heterogeneous multicore systems considering time constraint. In: 2012 IEEE 6th International Symposium on Embedded Multicore Socs (MCSoC), (pp. 121–127).
Yin, P., Yu, S., Wang, P., Wang, Y. (2006). A hybrid particle swarm optimization algorithm for optimal task assignment in distributed systems. Computer Standards & Interfaces, 28 (4), 441–450.
Zivojnovic, V., Velarde, J., Schlager, C., Meyr, H. (1994). Dspstone: A dsp-oriented benchmarking methodology. In: Proceedings of the International Conference on Signal Processing and Technology.
Acknowledgements
This work is partially supported by Chongqing High-Tech Research Program csct2012ggC40005, National 863 Program 2013AA013202, NSFC 61173014, NSFC 61472052
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Yi, J., Zhuge, Q., Hu, J. et al. Reliability-Guaranteed Task Assignment and Scheduling for Heterogeneous Multiprocessors Considering Timing Constraint. J Sign Process Syst 81, 359–375 (2015). https://doi.org/10.1007/s11265-014-0958-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11265-014-0958-0