论文部分内容阅读
单颗粒冷冻电镜三维重构是当前结构生物学领域最具发展前景的技术之一。为了获得高分辨率的重构模型,需要对上十万的冷冻电镜颗粒图像进行处理,需要强大的计算能力做支撑,传统的串行程序以及多核CPU程序已经无法满足当前领域科学家的需求。RELION是当前最主流的冷冻电镜图像处理软件,但是,其计算需求也是目前冷冻电镜软件中最大的。为此本文针对单颗粒冷冻电镜三维重构算法和RELION程序特点,结合GPU和CUDA并行优化技术,设计和实现了基于GPU的单颗粒冷冻电镜三维重构应用GeRelion。本文主要完成的工作有:1)分析和研究了单颗粒冷冻电镜三维重构的数学基础、相关原理和基于贝叶斯的EM算法,对电镜软件RELION程序进行热点和特征分析。2)针对RELION的程序特征设计了一个基于GPU的多级并行单颗粒冷冻电镜图像处理框架,该框架从协同计算、任务划分和存储管理对GPU结构进行适配,通过循环切分的方式对程序结构进行了重构,提出了自适应并行框架避免存储空间不够带来的问题。3)基于GeRelion并行框架,针对多重循环、非确定阈值计算、全局规约操作和密集访存操作等程序模式进行了实现与优化,提出了粗并行粒度和高并行度相结合循环优化、基于thrust的非确定阈值计算优化、基于片上原子操作的全局规约和基于片上存储器的数据重用方法。4)在多个数据集的多种配置方式上对GeRelion进行了评测,实验结果表明,本文实现的基于GPU的多级并行冷冻电镜图像处理软件可以获得超过60倍以上的加速,并且在多GPU上具有很好的可扩展性。