Journal of Signal Processing Systems

, Volume 81, Issue 3, pp 359–375 | Cite as

Reliability-Guaranteed Task Assignment and Scheduling for Heterogeneous Multiprocessors Considering Timing Constraint

  • Juan Yi
  • Qingfeng ZhugeEmail author
  • Jingtong Hu
  • Shouzhen Gu
  • Mingwen Qin
  • Edwin H.-M. Sha


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.


Task assignment Scheduling Heterogeneous Multiprocessor System reliability 



This work is partially supported by Chongqing High-Tech Research Program csct2012ggC40005, National 863 Program 2013AA013202, NSFC 61173014, NSFC 61472052


  1. 1.
    Nvidia provides second quarter fiscal 2009 business update.
  2. 2.
    Ahmad, I., & Dhodhi, M. (2006). Task assignment using a problem-space genetic algorithm. Concurrency: Practice and Experience, 7 (5), 411–428.CrossRefGoogle Scholar
  3. 3.
    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).Google Scholar
  4. 4.
    Borkar, S. (2005). Designing reliable systems from unreliable components: the challenges of transistor variability and degradation. IEEE Microbiology, 25 (6), 10–16.CrossRefGoogle Scholar
  5. 5.
    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.CrossRefGoogle Scholar
  6. 6.
    Bultan, T., & Aykanat, C. (1992). A new mapping heuristic based on mean field annealing. Journal of Parallel and Distributed Computing, 4, 292–305.CrossRefGoogle Scholar
  7. 7.
    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).Google Scholar
  8. 8.
    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).Google Scholar
  9. 9.
    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.CrossRefGoogle Scholar
  10. 10.
    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.CrossRefGoogle Scholar
  11. 11.
    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).Google Scholar
  12. 12.
    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)Google Scholar
  13. 13.
    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.CrossRefGoogle Scholar
  14. 14.
    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).Google Scholar
  15. 15.
    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.zbMATHCrossRefGoogle Scholar
  16. 16.
    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.zbMATHMathSciNetCrossRefGoogle Scholar
  17. 17.
    Kafil, M., & Ahmad, I. (1998). Optimal task assignment in heterogeneous distributed computing systems. IEEE Concurrency, 6 (3), 42–50.CrossRefGoogle Scholar
  18. 18.
    Kumar, R., Tullsen, D.M., Jouppi, N.P., Ranganathan, P. (2005). Heterogeneous chip multiprocessors. Computer, 38 (11), 32–38.CrossRefGoogle Scholar
  19. 19.
    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)Google Scholar
  20. 20.
    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.CrossRefGoogle Scholar
  21. 21.
    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)Google Scholar
  22. 22.
    Micheli, G.D. (1994). Synthesis and optimization of digital circuits. McGraw-Hill Higher Education.Google Scholar
  23. 23.
    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)Google Scholar
  24. 24.
    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)Google Scholar
  25. 25.
    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.zbMATHCrossRefGoogle Scholar
  26. 26.
    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.CrossRefGoogle Scholar
  27. 27.
    Shatz, S., Wang, J., Goto, M. (1992). Task allocation for maximizing reliability of distributed computer systems. IEEE Transactions on Computers, 41 (9), 1156–1168.CrossRefGoogle Scholar
  28. 28.
    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.CrossRefGoogle Scholar
  29. 29.
    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.CrossRefGoogle Scholar
  30. 30.
    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)Google Scholar
  31. 31.
    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)Google Scholar
  32. 32.
    Vigrass, W.J. (2010). Calculation of semiconductor failure rates. Harris Semiconductor.Google Scholar
  33. 33.
    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).Google Scholar
  34. 34.
    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.CrossRefGoogle Scholar
  35. 35.
    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.Google Scholar

Copyright information

© Springer Science+Business Media New York 2014

Authors and Affiliations

  • Juan Yi
    • 1
  • Qingfeng Zhuge
    • 1
    Email author
  • Jingtong Hu
    • 2
  • Shouzhen Gu
    • 1
  • Mingwen Qin
    • 3
  • Edwin H.-M. Sha
    • 1
  1. 1.College of Computer ScienceChongqing UniversityChongqingPeople’s Republic of China
  2. 2.School of Electrical and Computer EngineeringOklahoma State UniversityStillwaterUSA
  3. 3.Department of Electrical EngineeringThe Hong Kong Polytechnic UniversityHung HomHong Kong

Personalised recommendations