智东西8月4日消息,今日,面壁智能联合开源社区OpenBMB开源全球首个支持Stencil(模板计算)自动研究、自动部署的AI优化系统ForgeStencil。
根据官方披露,ForgeStencil一周内完成了超100个真实工业和科学计算软件的自动优化,这相当于每年投入约4-8个工程师,等效研发投入为300万~1000万元。
一般而言,专家每人每年能精调的应用软件通常不超过20个,ForgeStencil将单个应用所需的优化时长压缩到了小时级别,研发吞吐提升约1–2个数量级,研发效率提升约100倍,且这一效率可以随着算力规模加大并行放大。
现代工业与前沿科研的突破高度依赖高性能计算(HPC)软件,但这类软件底层普遍存在一种算力密集的核心计算模式Stencil,其核心是对规则网格上每个点及其固定邻域执行相同局部运算。
Stencil属于访存密集型计算,性能受内存带宽约束,通常会占据应用绝大部分耗时,其优化水平也直接决定了工业与科研仿真软件的运行效率。此前,Stencil优化高度依赖稀缺的HPC专家,这也导致其难以规模化,ForgeStencil就是为解决这一难题而生。
ForgeStencil基于面壁智能提出的全新软件开发思路Forge Engineering打造,是其继5月AI制造AI成果ForgeTrain之后取得的又一技术突破。
开源地址:https://github.com/OpenBMB/ForgeStencil
一、两大Agent协同调优,无需人工介入
ForgeStencil首次实现了从提出优化想法到应用无缝部署的全自动闭环。
该环节中,人类提供待优化的应用源码,之后ForgeStencil接手从自动分析真实应用、定位热点函数、锻造Kernel,到完成算子替换、正确性验证与集成回原应用,中间不需要人类专家介入优化决策。
ForgeStencil系统由Kernel Agent(理论方向)与App Agent(工程落地)组成。
Kernel Agent专注于自主研究并合成高性能Kernel,可以针对主流Stencil类型、多种Shape与精度要求,自主构建专用算子矩阵,将Stencil算子的数学表达写成逼近硬件物理极限的代码。
官方披露,与目前市面上Halide、Devito、EBISU、DRStencil、FlashFFTStencil等开源算法相比,ForgeStencil在同等硬件下的算子测试中表现如下:
- 同精度(fp32)对比下,ForgeStencil获得几何平均2.35倍的加速比;
- 混合精度(fp16)读写时,ForgeStencil拿下额外的1.95倍提速;
- 在更难的变系数Stencil全部Shape上,相比最优基线ForgeStencil取得几何平均下1.34倍的加速。
传统的静态算子库通常无法直接融入真实软件,因为现实的科学计算算法不是标准Stencil循环,不同的应用会对应不同的输入输出形式、计算流程等。
基于此,App Agent可以为每个应用单独打造方案,其会定位性能热点、建立应用自身的GPU基线、锻造候选优化、用程序自带的校验与计时验证,再集成回原应用。
在框架层,App Agent会寻找算子融合机会,并把待优化的Stencil算子提取出来。Kernel Agent负责优化具体的算子,其在之前建立的算子矩阵被作为后续开发的知识库,最终App Agent会使用应用自带的测例做端到端评测,以确保优化能面向真实场景。
基于此,ForgeStencil通过Kernel Agent与App Agent的协同,实现从自动生成代码向自动研究优化、从局部算子提速向真实应用部署的进化。
二、研发效率提升百倍,随算力规模扩大并行提速
此前,HPC专家要优化一个真实的工业软件或科学计算应用,需要进行性能瓶颈分析、软件架构理解等,整个流程历时数日到数周,因此每人每年能精调的应用软件通常不超过20个。
基于大模型,这一研究规则的效率提升了。
面壁智能的数据显示,ForgeStencil用时1周,就完成了超100个真实应用软件的自动优化,单个应用所需的优化时长在小时级别,研发吞吐提升约1–2个数量级,研发效率提升约100倍,且可以随着算力规模的加大并行放大。
这意味着Stencil算子的优化及其所决定的工业软件和科学计算应用优化首次实现规模化的可能性。
目前,ForgeStencil已在一批主流科学软件与基准上完成自动优化,并在应用自带的GPU实现之上实现端到端加速,其中42%直接对应真实工业生产软件厂家。
具体的应用包括:
Hypre(LLNL结构化多重网格求解器库,加速3.86倍):全球工业仿真最广泛依赖的生产级数值库之一,ForgeStencil搞定了高难度的红黑GS光滑子访存合并优化;
Minisweep(Sn离散纵标输运,核反应堆中子学,加速5.78倍):设计核反应堆核心计算的必需品,ForgeStencil重构了极其复杂的KBA波前扫掠结构;
gprMax/FDTD(Yee网格Maxwell电磁仿真,加速2.47倍):雷达和芯片电磁仿真的骨干,ForgeStencil完成了电磁装备与探地雷达的核心Stencil核替换;
RTM逆时偏移(油气地震成像,加速1.81倍);
TOTAL E&P minimod(道达尔油气地震mini-app,加速1.22倍):石油勘探的主力算法;
QuantLib债券定价(量化金融,加速1.82倍):金融机构所使用的定价库;
FHd非笛卡尔MRI重建(加速2.45倍):医学影像软件;
DBT数字乳腺断层成像反投影(加速1.63倍):医疗设备中的重建与成像负载。
与此同时,与人类专家相比,ForgeStencil还有一大优势就是其拥有大量并行的Agent共享知识库,可以共享经验。
结语:智能优化Stencil算子,小时级完成深度优化
综合来看,ForgeStencil可以提升工业软件和科学计算应用的研发效率。短期内,存量软件的自动优化可以带来直接的收益,已有的以Stencil为热点的工业或科学软件,能在小时级生成接近硬件极限性能的算子实现,这将进一步节约算力、压缩研发时间。
在更长远的角度,Stencil算子背后还包括CAE仿真、地震成像、电磁与流体计算等工业软件,未来这些软件性能优化实现自动化,将进一步加速国内制造业的发展。
热门跟贴