[论文解读] Thread Parallelism for Highly Irregular Computation in Anisotropic Mesh Adaptation
本文提出了一种基于工作列表的图修改操作的线程并行算法,用于高度不规则的各向异性网格自适应。通过结合基于轮次的独立集处理、延迟更新、原子工作列表创建以及工作窃取技术,该方法在共享内存系统中安全且可扩展地管理复杂的数据依赖关系,在 Intel Xeon Sandy Bridge 上实现了 60% 的并行效率,在 AMD Opteron Magny-Cours 上实现了 50% 的并行效率。
Thread-level parallelism in irregular applications with mutable data dependencies presents challenges because the underlying data is extensively modified during execution of the algorithm and a high degree of parallelism must be realized while keeping the code race-free. In this article we describe a methodology for exploiting thread parallelism for a class of graph-mutating worklist algorithms, which guarantees safe parallel execution via processing in rounds of independent sets and using a deferred update strategy to commit changes in the underlying data structures. Scalability is assisted by atomic fetch-and-add operations to create worklists and work-stealing to balance the shared-memory workload. This work is motivated by mesh adaptation algorithms, for which we show a parallel efficiency of 60% and 50% on Intel(R) Xeon(R) Sandy Bridge and AMD Opteron(tm) Magny-Cours systems, respectively, using these techniques.
研究动机与目标
- 在具有可变数据依赖关系的高度不规则网格自适应算法中实现可扩展的线程级并行性。
- 解决在动态拓扑变化和复杂数据访问模式下,安全并行化图修改工作列表算法的挑战。
- 提升在现代共享内存多核架构(例如 Intel Xeon、AMD Opteron)上的性能和可扩展性,以支持有限元模拟。
- 开发一种方法论,即使在不规则工作负载和 NUMA 效应影响下,也能实现实际的并行效率。
- 将该方法集成到开源 PRAgMaTIc 框架中,用于实际的自适应 FEM/FVM 模拟应用。
提出的方法
- 该算法使用图着色技术将网格自适应操作按轮次处理为独立集,以确保数据竞争自由。
- 采用延迟更新策略,在每轮结束后才提交对数据结构的更改,从而避免并发执行期间的冲突。
- 使用原子的获取并增加操作来安全地并行构建工作列表,最大限度减少竞争。
- 应用工作窃取负载均衡策略,将任务分发到多个线程,缓解负载不均问题。
- 该方法集成到使用 OpenMP 的共享内存并行框架中,并针对现代多核和众核系统进行了优化。
- 该方法支持动态网格拓扑突变(例如边交换、加密、坍缩),同时保持线程安全性和可扩展性。
实验结果
研究问题
- RQ1线程级并行是否可以有效且安全地应用于具有可变数据依赖关系的高度不规则网格自适应算法?
- RQ2在复杂且动态的数据访问模式和拓扑突变的情况下,如何实现高并行效率?
- RQ3哪些算法技术的组合能够在现代众核共享内存系统上实现可扩展的性能?
- RQ4工作窃取和延迟更新在多大程度上可以缓解不规则图修改工作列表中的负载不均和数据竞争?
- RQ5该方法论在真实基准测试中,跨多个插槽和 NUMA 架构的扩展性如何?
主要发现
- 所提出的方法论在双插槽 Intel Xeon Sandy Bridge 系统(40 个逻辑核心)上实现了 60% 的并行效率。
- 在四插槽 AMD Opteron Magny-Cours 系统上,该框架实现了 50% 的并行效率,表明其在不同架构上的鲁棒性。
- 平滑操作的可扩展性最佳,由于其计算强度较高,在四插槽配置下也实现了超过 50% 的效率。
- 随着插槽数量的增加,NUMA 效应变得显著,但该框架仍能保持良好的性能,有效应对这一挑战。
- 图着色、延迟更新、原子操作和工作窃取的结合,使得不规则网格自适应工作负载能够实现安全且可扩展的执行。
- 该方法已成功集成到开源 PRAgMaTIc 框架中,并在包含多尺度特征和激波前沿的 2D 和 3D 合成基准上得到验证。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。