Abstract
As General-Purpose Graphics Processing Units (GPGPUs) are widely employed in various precision-sensitive and safety-critical domains, guaranteeing the execution reliability of such applications under the impact of soft errors becomes a critical issue. Redundant Multi-Threading (RMT) provides a potentially low-cost mechanism for improving GPGPU reliability, but full protection comes with high time and resource costs. In this paper, we propose a partial thread protection mechanism for efficient Silent Data Corruption (SDC) detection in GPGPU programs. Firstly, we establish an accurate and efficient model for assessing the thread SDC vulnerability by capturing intra-thread error propagation and inter-thread error propagation. Then, based on the analysis results, we selectively replicate the SDC vulnerable threads. Experimental results indicate that our proposed thread SDC vulnerability assessment model closely aligns with the fault injection results, while introducing much lower execution overhead. Our partial thread redundancy mechanism provides a better trade-off between reliability and overhead compared with full RMT.
This work is supported by the National Natural Science Foundation of China (NSFC) (Grants No. 62272190, No. 62302190 and No. U19A2061).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Anwer, A.R., Li, G., Pattabiraman, K., Sullivan, M., Tsai, T., Hari, S.K.S.: GPU-trident: efficient modeling of error propagation in GPU programs. In: SC20: International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE, November 2020. https://doi.org/10.1109/sc41405.2020.00092
Bakhoda, A., Yuan, G.L., Fung, W.W.L., Wong, H., Aamodt, T.M.: Analyzing CUDA workloads using a detailed GPU simulator. In: 2009 IEEE International Symposium on Performance Analysis of Systems and Software. IEEE, April 2009. https://doi.org/10.1109/ispass.2009.4919648
Chang, C.K., Lym, S., Kelly, N., Sullivan, M.B., Erez, M.: Evaluating and accelerating high-fidelity error injection for HPC. In: SC18: International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE (nov 2018). https://doi.org/10.1109/sc.2018.00048
Che, S., Boyer, M., Meng, J., Tarjan, D., Sheaffer, J.W., Lee, S.H., et al.: Rodinia: A benchmark suite for heterogeneous computing. In: 2009 IEEE International Symposium on Workload Characterization (IISWC). IEEE, October 2009. https://doi.org/10.1109/iiswc.2009.5306797
Dimitrov, M., Mantor, M., Zhou, H.: Understanding software approaches for GPGPU reliability. In: Proceedings of 2nd Workshop on General Purpose Processing on Graphics Processing Units. ACM, March 2009. https://doi.org/10.1145/1513895.1513907
Gao, Y., Iqbal, S., Zhang, P., Qiu, M.: Performance and power analysis of high-density multi-GPGPU architectures: a preliminary case study. In: 2015 IEEE 17th International Conference on High Performance Computing and Communications, 2015 IEEE 7th International Symposium on Cyberspace Safety and Security, and 2015 IEEE 12th International Conference on Embedded Software and Systems. IEEE, August 2015. https://doi.org/10.1109/hpcc-css-icess.2015.68
Grauer-Gray, S., Killian, W., Searles, R., Cavazos, J.: Accelerating financial applications on the GPU. In: Proceedings of the 6th Workshop on General Purpose Processor Using Graphics Processing Units. ACM, March 2013. https://doi.org/10.1145/2458523.2458536
Gupta, M., Lowell, D., Kalamatianos, J., Raasch, S., Sridharan, V., Tullsen, D., et al.: Compiler techniques to reduce the synchronization overhead of GPU redundant multithreading. In: Proceedings of the 54th Annual Design Automation Conference 2017. ACM, June 2017. https://doi.org/10.1145/3061639.3062212
Kalra, C., Previlon, F., Li, X., Rubin, N., Kaeli, D.: PRISM: Predicting resilience of GPU applications using statistical methods. In: SC18: International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE, November 2018. https://doi.org/10.1109/sc.2018.00072
Kalra, C., Previlon, F., Rubin, N., Kaeli, D.: ArmorAll: compiler-based resilience targeting GPU applications. ACM Trans. Archit. Code Optim. 17(2), 1–24 (2020)
Khudia, D.S., Wright, G., Mahlke, S.: Efficient soft error protection for commodity embedded microprocessors using profile information. ACM SIGPLAN Not. 47(5), 99–108 (2012)
Kim, J., Kim, H., Lakshmanan, K., Rajkumar, R.R.: Parallel scheduling for cyber-physical systems. In: Proceedings of the ACM/IEEE 4th International Conference on Cyber-Physical Systems. ACM, April 2013. https://doi.org/10.1145/2502524.2502530
Lu, Q., Pattabiraman, K., Gupta, M.S., Rivers, J.A.: SDCTune: a model for predicting the SDC proneness of an application for configurable protection. In: Proceedings of the 2014 International Conference on Compilers, Architecture and Synthesis for Embedded Systems. ACM, October 2014. https://doi.org/10.1145/2656106.2656127
Pouchet, L.N.: PolyBench: the polyhedral benchmark suite (2012). http://www.cs.ucla.edu/pouchet/software/polybench
Wadden, J., Lyashevsky, A., Gurumurthi, S., Sridharan, V., Skadron, K.: Real-world design and evaluation of compiler-managed GPU redundant multithreading. In: 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA). IEEE, June 2014. https://doi.org/10.1109/isca.2014.6853227
Wei, X., Jiang, N., Wang, X., Yue, H.: Detecting SDCs in GPGPUs through an efficient instruction duplication mechanism. In: Qiu, H., Zhang, C., Fei, Z., Qiu, M., Kung, S.-Y. (eds.) KSEM 2021. LNCS (LNAI), vol. 12817, pp. 571–584. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-82153-1_47
Wei, X., Yue, H., Gao, S., Li, L., Zhang, R., Tan, J.: G-SEAP: analyzing and characterizing soft-error aware approximation in GPGPUs. Future Gener. Comput. Syst. 109, 262–274 (2020). https://doi.org/10.1016/j.future.2020.03.040
Yang, L., Nie, B., Jog, A., Smirni, E.: Enabling software resilience in GPGPU applications via partial thread protection. In: 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE). IEEE, May 2021. https://doi.org/10.1109/icse43902.2021.00114
Yang, L., Nie, B., Jog, A., Smirni, E.: Practical resilience analysis of GPGPU applications in the presence of single- and multi-bit faults. IEEE Trans. Comput. 70(1), 30–44 (2021). https://doi.org/10.1109/tc.2020.2980541
Yue, H., Wei, X., Li, G., Zhao, J., Jiang, N., Tan, J.: G-SEPM: building an accurate and efficient soft error prediction model for GPGPUs. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. ACM, November 2021. https://doi.org/10.1145/3458817.3476170
Yue, H., Wei, X., Tan, J., Jiang, N., Qiu, M.: Eff-ECC: protecting GPGPUs register file with a unified energy-efficient ECC mechanism. IEEE Trans. Comput. Aid. Des. Integr. Circ. Syst. 41(7), 2080–2093 (2022)
Öz, I., Ömer, F.K.: Regional soft error vulnerability and error propagation analysis for GPGPU applications. J. Supercomput. 78(3), 4095–4130 (2021). https://doi.org/10.1007/s11227-021-04026-6
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Wei, X., Wu, Y., Jiang, N., Yue, H. (2024). Detecting SDCs in GPGPUs Through Efficient Partial Thread Redundancy. In: Tari, Z., Li, K., Wu, H. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2023. Lecture Notes in Computer Science, vol 14493. Springer, Singapore. https://doi.org/10.1007/978-981-97-0862-8_14
Download citation
DOI: https://doi.org/10.1007/978-981-97-0862-8_14
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-97-0861-1
Online ISBN: 978-981-97-0862-8
eBook Packages: Computer ScienceComputer Science (R0)