方案
2008年,经过长期努力,中国科学院地质与地球物理研究所和北京吉星吉达科技有限公司联合研发成功了“油气勘探地震偏移GPU/CPU协同并行计算系统”——在硬件层面将GPU和CPU两种不同架构的处理器结合在一起,组成硬件上的协同并行模式,同时在应用程序编写上实现GPU和CPU的协同配合的并行计算(CPPC)。具体来说说,协同并行计算(CPPC)机就是由CPU负责执行顺序型的代码,如操作系统、数据库等应用,而由GPU来负责密集的并行计算。
作为该系统的硬件平台,项目团队开发成功一款GK-II型GPU/CPU协同并行计算机,是在一个24U高的机柜中安装了6台Nvidia Tesla S1070 1U机架式服务器和6台配置两颗2.5GHz四核CPU的2U机架式PC服务器,运算能力达到24万亿次每秒,总体功耗是7000瓦特。
同时,项目组借助Nvidia CUDA开发编程环境的支持,在中科院地质与地球物理所刘洪研究员偏移算法的基础上,按照GPU原理及协同并行计算(CPPC)的思路,针对偏移算法中不同阶段的运算特点,采用不同的软件编写策略,在程序的每一个环节最大限度实现不同处理器协同计算,成功编写了“非对称走时Kirchhoff叠前时间偏移算法”的协同并行计算(CPPC)软件。
2008年下半年,中科院地质与地球物理研究所对系统进行了完成740平方公里三维叠前时间偏移处理(输入数据768GB,输出全部936条测线,4毫秒采样,6秒道长)的测试。测试结果表明,在GK-II上运行“非对称走时Kirchhoff叠前时间偏移软件”处理上述数据,仅用了55小时2分钟,不到2.5天,而一套由32个双路单核刀片服务器构成的集群,使用某商业软件,却花费了3307小时12分钟,约137天。
除了计算速度的对比测试,项目组还进行了资料处理效果的测试,毕竟,处理效果的后坏对于地震勘探来说更为重要。项目组使用该系统处理了大庆、河南、胜利、华北、吉林、新疆、中原、辽河等13块、总面积超过50000平方公里,数据量约11.6TB的三维地震数据。测试结果表明该系统与常用商业软件的整体效果相当,且对介质横向速度变化大、倾角陡的地区成像效果改善明显,优于目前的商用软件。
2008年10月,中石油勘探生产分公司组织召开“GPU石油勘探应用研讨会”,会上将此项技术定名为“GPU/CPU协同并行计算”(简称“CPPC”技术),会后制作了不同配置的8台样机并进行了测试验证。经过多方测试,结果表明:装配了一个GPU的服务器的效率相当于50-200台单核CPU节点的效率(视硬件配置不同而有差别),硬件成本不到目前普遍应用的大规模计算机群的十分之一,电费节省95%以上,占地空间省90%以上。如果考虑机房、空调、UPS、维护等因素,运营成本还会大幅度降低。同时,由于采用了精度更高的算法,地震资料处理结果的地质效果明显提高。