TypechoJoeTheme

MetMan's Blog

网站页面
搜索到 3 篇与 的结果 ———
2025-03-22

CAMx平流模块GPU CUDA移植优化

CAMx平流模块GPU CUDA移植优化
本文是对Cao et al.(2023)论文的进一步解读。GPU移植方案移植路线:Fortran代码先改成C代码,然后进一步使用CUDA C扩展改写。Fortran到C转换Fortran到C手动重写(可以借助一些转换工具)需要注意以下几点:实际上就是C/Fortran的符号链接、传参方式、数据类型对应、等价库函数以及存储方式。标准C到CUDA C转换由于Fortran不能直接调用CUDA C kernels,需要一个C接口程序用于传递参数和数据。优化手段减少CPU-GPU通信频率原来PPM平流方案Fortran实现方式不适合GPU计算。如下图所示,PPM水平平流以一维方式实现,先做x方向,再做y方向。比如x方向,核心程序hadvppm是针对x方向的一行数据进行计算,在四重嵌套循环(垂直层/平流时间子步/y方向/平流物种)内调用该程序。如果简单改写为C和CUDA C,每次只传输一行数据到GPU计算,CPU-GPU通信频繁且传输数据量小。因此,重构PPM实现,将hadvppm改写为对3D场一次性做x方向的PPM计算,这就要求将传递数据保存到三维或四维数组中,一次性传给GPU。GPU线...
2025年03月22日
14 阅读
0 评论
2025-03-22

CAMx平流模块GPU HIP移植优化

CAMx平流模块GPU HIP移植优化
Cao et al.(2024)发表了空气质量模型CAMx模式PPM(Piecewise Parabolic Method)平流模块在国产GPU加速器上使用HIP编程接口移植优化工作,是Cao et al.(2023) CUDA C优化工作的后续。硬件和编程模型文中所述的国产GPU加速器估计是曙光的DCU加速器。试验平台包括NVIDIA GPU和国产GPU,软硬件配置见下图国产GPU的显存是16GB的HBM2。Songshan超算和Taiyuan超算的国产GPU通过PCIe与CPU连接,主存和显存之间的数据传输峰值带宽分别为16GB/s和32GB/s。ROCm-HIP是AMD为其GPU设备开发的编程接口,对标NVIDIA的CUDA。两者使用非常类似,大多数情况下cuda c API接口cuda前缀替换为hip即可适用于AMD GPU。因此,有一个perl脚本工具HIPIFY可以将cuda c程序转换成hip程序。国产GPU只能使用HIP,不能使用CUDA。异构实现路线CAMx模式由Fortran语言编写,支持MPI+OpenMP。为了能够在GPU平台运行,需要先将其改写为C代码,...
2025年03月22日
13 阅读
0 评论
2024-12-12

ECMWF Hybrid 2024项目

ECMWF Hybrid 2024项目
ECMWF内部项目"Hybrid 2024"支持IFS模式在GPU加速器上运行,项目目标是在2025年中期将IFS模式主要部分移植到GPU上。IFS模式组成:项目采用多种移植手段,包括源到源翻译工具(Loki)FIELD API (Atlas库)管理数据offload到加速设备编译指令模型,比如OpenACC和OpenMP有限的底层编程模型,CUDA/HIP项目进展如下表所示:参考资料Hybrid 2024 - Preparing IFS for HPC accelerator architecturesECMWF: Status and Plans
2024年12月12日
148 阅读
0 评论

互动读者

标签云

最新回复

  1. tqymnonccc打酱油
    2024-09-27
  2. toibdpojay打酱油
    2024-09-22
  3. yvctxyevvw打酱油
    2024-09-22
  4. frezhwzwuq打酱油
    2024-09-22
登录
X
用户名
密码