论文部分内容阅读
随着人类基因组计划的完成,蛋白质组学受到了越来越多关注。其中对蛋白质翻译后修饰的研究是一个重要的分支,而对翻译后修饰进行鉴定是研究的首要任务。
串联质谱技术是鉴定蛋白质翻译后修饰的主要方法,目前已经有很多根据质谱数据进行蛋白质翻译后修饰鉴定的软件。其中,InsPecT由于采用了先进的盲搜索算法MS-Alignment,在鉴定蛋白质翻译后修饰时具有其他软件无法比拟的优势,但该软件的时间复杂度很高,无法满足用户的实际需求。本文以中国科学院上海生命科学院正在使用的软件InsPecT作为研究对象,把对其进行并行优化作为研究的重点,最终目标是让并行软件满足用户计算速度与鉴定精度的需求。
论文对InsPecT的大规模计算进行并行处理,有效减少了计算时耗;同时,提出蛋白质数据库索引预处理方案,提升软件计算精度。主要的创新工作包括以下两个方面:
(1)InsPecT的并行化实现。
在实际质谱鉴定实验中,质谱数据条数达到百万量级,蛋白质数据库中的序列达到上万量级,且计算中每条序列时都需要考察各残基位点是否发生突变,这样庞大的迭代次数非常耗时,串行程序无法及时完成计算任务。基于上海生科院的应用需求,本文针对InsPecT实现了可扩展性较好的并行优化版本。为了保证负载平衡,本文尝试了对等与主从两种并行模式,通过比较最终采用了动态分配任务的主从模式。
(2)通过建立数据库索引文件对InsPecT进行优化。
在对InsPecT软件进行研究的过程中,我们发现源程序中包含了大量的重复计算;此外,源程序编写中以牺牲鉴定精度来换取时间复杂度和空间复杂度的降低。其结果导致算法精度的降低,但计算复杂度依然较高。本文通过建立蛋白质数据库索引文件进行预处理,一方面减少了重复计算时间,另一方面提高了算法的鉴定精度。