观潮 · 模式预报与气象 AI 观察

NCAR 冻结 WRF 开发之后:社区往 4.7.1 里插 OpenACC 指令的这半年

2026-10-18

> NCAR 在帖子里明确回复「已决定冻结 WRF 开发,因此参与 WRF-GPU 实现不是我们的优先级」。与此同时,社区出现了一个叫 FahrenheitResearch/wrf-gpu-port 的仓库:用 Python 脚本往 WRF 4.7.1 的 .f90 源码里插 OpenACC 指令,让动力核心的 small_step、big_step、diffusion、module_em 几部分跑在 GPU 上,物理参数化和平流还没做。有人编译成功但 5090 上完全看不到 GPU 被调用,有人能看见显存被填、占用率爬升,然后在第一个时间步之后静默挂死、没有任何报错。作者本人后来下场道歉并说明项目已下线转为私有开发。

缺的是哪一块

WRF 官方没有一条 GPU 路线,商业方案(帖子里点名 TempoQuest AceCast)要收费。NCAR 的回复把这条路堵得更明确:他们不知道这些 wrf-gpu 代码,且因为 WRF 开发已冻结,参与 WRF-GPU 实现不在优先级里,只能希望社区有人提供更多进展。

这条冻结还牵出一串后续提问:决定是什么时候做的、还会不会有 4.8.1 来修 bug、会不会有正式公告、GitHub 上 WPS 和 WRF 待处理的合并请求会不会被推上去。NCAR 的答复只有一句「我们很快会发公告」。有用户要求至少让最后一版 WRF 和 WPS 稳定下来,另有用户提出希望把欧洲的 AIFS 和 AIGFS 数据正确接进 WPS。

脚本做什么:往源码里插 OpenACC

这个仓库不是重写,而是打补丁:Python 脚本把三类 OpenACC 指令( kernels、 data、 routine)插进 .f90 源文件,目标是最新的稳定版 WRF,也就是 4.7.1。覆盖范围是动力核心里的 small_step、big_step、diffusion 和 module_em 几处,明确不含物理参数化和平流。

硬件清单给得比较具体:RTX 3090 / 4090 / 5090,以及 A100、H100、H200、B200。与商业方案的区别是免费。

实际跑起来的三种反馈

使用者 · 现象

发起帖者(5090) · 编译成功,但看不到任何 GPU 使用的迹象

第二位(4080 Super) · 编译通过,文档互相矛盾;能看见进程、显存被填、占用率上升,第一个时间步后静默挂死

第三位 · 跑通了几次测试,转而提需求

第二位的描述最细,也最能说明这类补丁当前的成熟度:

作者本人下场说明了什么

项目作者后来在帖子里道歉,并交代了背景:他是做强化学习的机器学习研究者,每次新的前沿大模型出来都会给它几个高难度任务,其中一个就是「给 WRF 写 GPU/CUDA kernel」。仓库之所以公开,纯粹是为了省事——他用了 8 台社区租用的 GPU 实例,不想在这些机器上放自己的 GitHub 凭据,也不想每次起新实例都等一小时的慢速同步。

他说这个阶段的目的已经达到,之后转到自己搭的本地服务器上私有开发,并预计新一代模型会有更好的长上下文处理能力。对当时试用过这个「坏掉的项目」的人,他的说法是现在状态好得多,并估计再过一个月左右能有一个真正能干点事、而不只是把显存填满的版本。

同一位作者还给出了另一个项目:ArWen,一个类 WRF-ARW 的 GPU 原生区域天气模式,声称与 WRF v4.6.1 做过对比验证。

城市夜间温度和 geo_em 这两条具体需求

有一条需求很实际:能不能支持已有的 geo_em 静态文件。使用者的场景是在自己的 WRF 运行里加入了定制的土地利用、土壤和高程数据,用 GPU 版本复现不出来。作者的回复是这是第一次收到这类请求,赶不上当天要发的 1.6,但会放进 1.7,预计当周末出。

另一条是城市夜间温度偏差。使用者说当前的 ArWen 不支持城市参数化、Noah LSM 的 mosaic 土地利用,也不支持 WUDAPT 土地利用类别,导致预报里城市区域夜间最低气温被系统性高估。他同时提到自己在 GEOGRID.TBL 里关掉地形平滑,以便更好地刻画小山谷里的夜间冷空气堆积,配合 UW 边界层方案(bl_pbl_physics=9)在中欧的模拟里效果最好。

针对这条,帖子里出现一条关于 WRF-GPU v0.4.0 的回复,称其已支持城市气候区分类、单层城市冠层方案、多层城市能量平衡方案,以及 UW 边界层方案,但 Noah 的地表 mosaic 还不支持。声明部分说这是独立、开源、与 UCAR/NCAR 无隶属关系的 WRF-ARW 移植版本,大部分内容针对 WRF-ARW 第四版做过逐位或统计一致性的对比,但不保证完美,需要 Ampere 及以上的英伟达 GPU。需要说明的是,这条关于 v0.4.0 的说明在本轮采集的多个不同主题帖子里都出现过,措辞高度一致。

边界与还没解决的部分

一句话判断

这条帖子的价值不在给出可用的 GPU 版 WRF,而在把现状摆清楚了:官方冻结、社区自发补位、补丁只覆盖动力核心且仍会挂死,而真正卡住业务化的是城市参数化、定制静态数据和物理过程这三块。

在观潮中打开(含配图与交互)→