首页> 外文会议>2012 SC Companion: High Performance Computing, Networking, Storage and Analysis. >PyOP2: A High-Level Framework for Performance-Portable Simulations on Unstructured Meshes
【24h】

PyOP2: A High-Level Framework for Performance-Portable Simulations on Unstructured Meshes

机译:PyOP2:用于非结构化网格上性能便携式仿真的高级框架

获取原文
获取原文并翻译 | 示例

摘要

Emerging many-core platforms are very difficult to program in a performance portable manner whilst achieving high efficiency on a diverse range of architectures. We present work in progress on PyOP2, a high-level embedded domain-specific language for mesh-based simulation codes that executes numerical kernels in parallel over unstructured meshes. Just-in-time kernel compilation and parallel scheduling are delayed until runtime, when problem-specific parameters are available. Using generative metaprogramming, performance portability is achieved, while details of the parallel implementation are abstracted from the programmer. PyOP2 kernels for finite element computations can be generated automatically from equations given in the domain-specific Unified Form Language. Interfacing to the multi-phase CFD code Fluidity through a very thin layer on top of PyOP2 yields a general purpose finite element solver with an input notation very close to mathematical formulae. Preliminary performance figures show speedups of up to 3.4x compared to Fluidity's built-in solvers when running in parallel.
机译:新兴的多核平台很难以性能可移植的方式进行编程,同时又要在各种架构上实现高效率。我们介绍PyOP2的工作进展,PyOP2是一种高级嵌入式领域特定语言,用于基于网格的仿真代码,该代码在非结构化网格上并行执行数字内核。当特定于问题的参数可用时,实时内核编译和并行调度将延迟到运行时。使用生成元编程,可以实现性能的可移植性,而并行实现的细节则可以从程序员那里抽象出来。可以根据领域特定的统一格式语言中给出的方程式自动生成用于有限元计算的PyOP2内核。通过在PyOP2顶部的非常薄的层与多相CFD代码进行接口,可以产生通用的有限元求解器,其输入符号非常接近数学公式。初步性能数据显示,与Fluidity的内置求解器并行运行时,其加速比达到3.4倍。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号