《AI 给油气勘探提速 45%!国产开源 ForgeStencil 的"RTM逆时偏移"硬核实测》
你知道石油公司是怎么找到地下油气的吗?不是打井碰运气,而是先做一次"地下 CT"——往地下放炮,收集地震波回声,再通过超级计算机把几千米深的地层"成像"出来。这套技术里最烧钱的一步叫 RTM(逆时偏移),一次作业在 A100 显卡集群上可能要跑几天到几周,电费和机时费都是天文数字。
就在昨天(8月4日),国产团队搞了个大新闻:面壁智能 + OpenBMB 开源了 ForgeStencil——全球首个 Stencil 优化「自动研究→自动部署」全流程 AI 系统,用两个 AI Agent 自动给科学计算软件提速,零人工介入。而它对外宣传最硬核的一个标杆案例,正是油气勘探的 RTM:端到端实测提速 1.81 倍,等于同样硬件、同样数据,出图时间缩短 45%。
1.81 倍听起来不大?看完你就知道,这个数字有多"含金量"。
一、它不是"换了个更强的显卡",是让 AI 自己动手改代码
ForgeStencil 的工作方式像一支两人小队:
**Kernel Agent(内核智能体)**负责"研究"——Plan → Code → Profile 循环,自己探索分块、算子融合、内存布局优化等策略,把经验沉淀进算子知识库;
**App Agent(应用智能体)**负责"落地"——定位程序热点、从知识库锻造专用算子、用程序自带的功能检查验证正确性、最后自动打成 patch 集成进真实软件。
整个过程只需要一个 USE_OURS 开关,就能在原版和优化版之间切换。成绩单:100 个端到端验证应用,几何平均提速 2.05 倍,覆盖油气勘探、电磁仿真、医疗影像、气候预测、核反应堆模拟等硬核领域。最快的 pathfinder 案例直接干到了 97.7 倍。
二、RTM 案例:在"行业金标准"上再挤 1.81 倍
为什么偏偏拿 RTM 当标杆?因为它是油气勘探地震成像领域唯一的金标准 GPU-vs-GPU 端到端验证,也是最难啃的骨头。
基准程序用的是 Devito 4.8.21——油气勘探领域实际投入生产的行业标准编译器,壳牌、BP、道达尔这些巨头都在用。它自带的 GPU 内核本身就是高度优化的,不是"随便写写"的测试代码。
ForgeStencil 的操作很精妙:没有重写整个 RTM 程序,只替换了 profiling 出来的 Stencil 热点算子。它写了一个 CUDA 内核,通过 Devito 的 JIT 后门在运行时热替换掉原来的 OpenACC 内核,程序其余 100% 的部分(I/O、边界条件、成像条件)原封不动。
审计数据更是严苛到"不注水":
· 端到端加速 1.808×(实测值,5 轮交错测量取中位数)
· 正确性 binary_linf = 3.586e-08,远低于容差,Devito 自带检查 bit-exact 级精度
· 基准代码 sha256 逐字节校验,每个数字都能从零复现
三、为什么 1.81× 比 97.7× 更值得尊敬?
因为大加速来自"结构性 headroom"——97.7 倍那种爆表成绩,往往是因为原程序本身有严重瓶颈(太多小内核启动、低占用率),相当于从"写得烂"优化到"写得好"。而 RTM 是超重型端到端管线:正演波场传播 → 数据残差 → 逆时反传播 → 互相关成像 → 多炮叠加,Stencil 有限差分只是其中一环,其余环节被 Amdahl 定律死死拽住。
更关键的是对比组:同一批应用里,sw4lite 只有 1.00×、hpgmg_fv 1.02×、cloverleaf 1.01×——这些是"已经优化到头"的代码。能在 Devito 这种专业编译器生成的 GPU 内核上再挤出 1.81 倍,说明 ForgeStencil 不是欺负"菜鸡代码",而是能在高手过招里真刀真枪占到便宜。
四、对油气行业意味着什么?
算笔账:一个典型的三维海上地震 RTM 作业在 A100 集群上跑几天到几周,1.81 倍 = 出图时间缩短 45%。放在油气勘探每年几十亿美元的 HPC 账单里,这不是小数字。
而且它给的是一个可复现的 patch:油气公司的 HPC 团队不需要懂 CUDA 调优,只需要三行命令 ./vendor.sh && git apply patch && python run_e2e.py,就能在自己现成的 Devito 程序上验证加速。内核库还支持 sm_80/sm_90/sm_100 跨代际调度——RTM 案例在 H100 上还能自动吃到带宽 +1.68× 的红利。


