当前位置: X-MOL 学术Concurr. Comput. Pract. Exp. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Task-based parallel strategies for computational fluid dynamic application in heterogeneous CPU/GPU resources
Concurrency and Computation: Practice and Experience ( IF 1.5 ) Pub Date : 2020-04-13 , DOI: 10.1002/cpe.5772
Lucas Leandro Nesi 1 , Matheus da Silva Serpa 1 , Lucas Mello Schnorr 1 , Philippe Olivier Alexandre Navaux 1
Affiliation  

Parallel applications executing in contemporary heterogeneous clusters are complex to code and optimize. The task‐based programming model is an alternative to handle the coding complexity. This model consists of splitting the problem domain into tasks with dependencies through a directed acyclic graph, and submit the set of tasks to a runtime scheduler that maps each task dynamically to resources. We consider that computational fluid dynamics applications are typical in scientific computing but not enough exploited by designs that employ the task‐based programming model. This article presents task‐based parallel strategies for a simple CFD application that targets heterogeneous multi‐CPU/multi‐GPU computing resources. We design, develop, evaluate, and compare the performance of three parallel strategies (naive, ghost‐cells, and arrow) of a task‐based heterogeneous (CPU and GPU) application that simulates the flow of an incompressible Newtonian fluid with constant viscosity. All implementations rely on the StarPU runtime, and we use the StarVZ toolkit to conduct comprehensive performance analysis. Results indicate that the ghost cell strategy provides the best speedup (77×) considering the simulation time when the GPU resources still have available memory. However, the arrow strategy achieves better results when the simulation data increases.

中文翻译:

异构CPU/GPU资源中计算流体动力学应用的基于任务的并行策略

在当代异构集群中执行的并行应用程序很难编码和优化。基于任务的编程模型是处理编码复杂性的替代方案。该模型包括通过有向无环图将问题域拆分为具有依赖关系的任务,并将任务集提交给运行时调度程序,该调度程序将每个任务动态映射到资源。我们认为计算流体动力学应用在科学计算中是典型的,但没有被采用基于任务的编程模型的设计充分利用。本文介绍了针对异构多 CPU/多 GPU 计算资源的简单 CFD 应用程序的基于任务的并行策略。我们设计、开发、评估和比较三种并行策略(naive、ghost-cells、和箭头)基于任务的异构(CPU 和 GPU)应用程序,模拟具有恒定粘度的不可压缩牛顿流体的流动。所有实现都依赖于 StarPU 运行时,我们使用 StarVZ 工具包进行全面的性能分析。结果表明,当 GPU 资源仍有可用内存时,考虑到模拟时间,ghost cell 策略提供了最佳加速比(77 倍)。但是,当模拟数据增加时,箭头策略取得了更好的效果。结果表明,当 GPU 资源仍有可用内存时,考虑到模拟时间,ghost cell 策略提供了最佳加速比(77 倍)。但是,当模拟数据增加时,箭头策略取得了更好的效果。结果表明,当 GPU 资源仍有可用内存时,考虑到模拟时间,ghost cell 策略提供了最佳加速比(77 倍)。但是,当模拟数据增加时,箭头策略取得了更好的效果。
更新日期:2020-04-13
down
wechat
bug