This project aims to improve the dependability of general purpose GPU (GPGPU) computing systems such as high performance computing and supercomputers, by exploring theoretical foundations and implementation techniques of high-efficient checkpointing mechanisms for GPGPU systems. This proposal consists of three major contributions. First, based on four design principles such as robustness, high-performance, transparency, and flexibility, we propose a novel checkpoint-inside-the-kernel mechanism for GPU kernels, which combines several techniques such as incremental storage and static analysis to aid the retrieval, record and recovery of GPU runtime states, and can be easily integrated into a conventional CPU-based checkpointing system. Second, based on existing GPGPU development frameworks, we propose to model GPU hardware intricacies by leveraging the inherent semantics of GPU programs, which has important implications for building a transparent GPU checkpointing system. Third, we further explore potential applications of GPU checkpointing mechanism in three typical scenarios: online task migration in virtual machines, debugging support and automatic failure diagnosis of GPU programs.
本项目以GPU图形处理器在通用计算系统中的应用为背景,以提高GPU通用计算系统的可靠性为切入点,探索GPU程序高效检查点技术的实现方法与理论基础,使之满足GPU通用计算系统在高性能计算和超级计算中的理论和应用需要。以鲁棒性、高性能、透明性、灵活性为设计原则,将传统CPU检查点技术与GPU的体系结构特征结合起来,系统性地研究GPU核内检查点机制中的主要过程和关键问题,将增量存储、代码静态分析等技术融入到GPU核内状态的读取、保存和恢复过程中;对GPU硬件状态进行分析和建模,提取主要的特征参数,基于现有GPU通用计算软件开发框架,分析GPU程序内部语义,构建用户透明的检查点技术;研究GPU检查点技术在不同应用场景的应用,如虚拟机环境中的GPU计算任务在线迁移、GPU程序调试支持和自动错误诊断。
本项目以GPU图形处理器在通用计算系统中的应用为背景,以提高GPU通用计算系统的可靠性为切入点,探索GPU检查点技术的实现方法,使GPU满足在高性能计算系统中的特定需求。.以GPU检查点技术为目标,研究内容包括:1. GPU核内检查点实现方法,具体来讲,研究了GPU线程块调度机制,GPU块间和块内执行状态的表示方法、读写方式,并以此为基础实现GPU核间和核内检查点方案;2. 为深入了解GPU程序的容错机制,研究了GPU程序中存在的与动态内存管理相关的错误,特别地,分析了并发GPU程序可能产生的堆栈溢出、整数溢出、结构体指针覆盖等问题;3. 为考察GPU检查点技术在虚拟化系统中的应用,比如虚拟机中GPU应用的在线迁移,研究了虚拟机域间快速通信机制,以及跟IO相关的虚拟机调度算法;4. 检查点技术需要保存的数据量巨大,为节省存储和时间开销,研究了基于GPU的数据去冗余算法和分布式数据去冗余方法。另外,研究了基于云存储的文件系统,探索如何高效利用云存储来保存不同类型的用户数据;5. 为深入分析真实GPU应用程序的运行特征,研究了基于GPU的图计算系统优化方法。另外,实现了基于角色编程模型的图计算系统,并实现了一种轻量级检查点容错机制。.在国际期刊和会议上发表论文11篇,其中5篇属于中国计算机协会(CCF)推荐的A类期刊论文,1篇CCF B类期刊论文,2篇CCF B类会议论文,1篇CCF C类会议论文。项目组开发了7个相关系统,其中基于GPU的Rabin指纹算法实现、基于角色编程模型的图计算系统、GPU动态内存溢出测试三个系统的源代码已经对外开放,其他系统也通过各种形式共享,这种开放共享的形式有助于提高研究成果的学术和社会影响力。.从个体看,本项目的研究成果有较突出的原创性,比如核内检查点方法、并发GPU应用潜在内存溢出问题、性能高达40Gbps的GPU数据去冗余算法、基于角色编程模型的图计算;从整体看,研究成果对增强高性能计算系统可靠性、降低系统存储代价、提高虚拟机性能、探索异构系统图计算编程模型等方面,都有现实的科学意义。
{{i.achievement_title}}
数据更新时间:2023-05-31
玉米叶向值的全基因组关联分析
正交异性钢桥面板纵肋-面板疲劳开裂的CFRP加固研究
硬件木马:关键问题研究进展及新动向
基于SSVEP 直接脑控机器人方向和速度研究
小跨高比钢板- 混凝土组合连梁抗剪承载力计算方法研究
神经生长因子受体P75NGFR调控TIMP2/MMP25平衡逆转EMT抑制结直肠癌侵袭转移的机制研究
面向通用计算集群的全局GPU虚拟化理论与方法研究
面向GPU的电力系统电磁暂态并行计算方法研究
使用通用GPU的非同质分布式数据流skyline查询方法的研究
通用异构并行密度泛函计算方法研究