2024-09-03
近日,深圳超算中心博士后王文强博士参与的科研团队在《Geophysical Journal International》期刊上发表了一篇题为Enhancing computational efficiency in 3-D seismic modelling with half-precision floating-point numbers based on the curvilinear grid finite-difference method的科研论文(论文链接:https://doi.org/10.1093/gji/ggae235)。这项研究由南方科技大学地球与空间科学系、国家超级计算深圳中心的多位研究人员共同完成,王文强博士为该论文的第二作者。
图1 半精度浮点格式与单精度浮点格式示意图
图2 单精度地震模拟结果与半精度模拟结果对比示意图
大规模和高分辨率地震模拟对于计算地震波、评估地震危险和推进勘探地震学具有重要意义。然而,实现高分辨率地震建模需要大量的计算和存储资源,导致巨额计算成本。
为了提高计算效率和性能,异构计算平台(如Nvidia 图形处理单元 (GPU))原生支持半精度浮点数(FP16)。与单精度浮点数(FP32)相比,FP16操作可以获得更快的计算速度、更低的存储要求和更强的性能,在地震模拟中具有显著优势。然而,FP16中受存储范围的固有限制可能会导致计算过程中出现严重的数值上溢、下溢和浮点错误。本项研究中,为了保证波动方程解的稳定性和浮点误差的最小化,研究人员采用缩放策略来调整FP16算术运算。为了获得最佳的GPU浮点性能,研究人员在 CUDA 内核的浮点单元(FPU)中实现了2路单指令多数据(SIMD)。
此外,研究人员基于曲线网格有限差分法(CGFDM)实现了FP16运算的地震模拟求解器,并进行了多次地震模拟。将波场数据结果与FP32的标准CGFDM结果进行比较,结果显示FP16引入误差在允许范围,而且FP16的结果与FP32结果具有极好的一致性。性能分析表明,FP16地震建模在计算效率方面表现出显著的提高,与FP32版本相比,实现了约1.75的加速,内存使用量减少了一半。