...
首页> 外文期刊>Computer physics communications >A domain specific language for performance portable molecular dynamics algorithms
【24h】

A domain specific language for performance portable molecular dynamics algorithms

机译:用于性能便携式分子动力学算法的域特定语言

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

获取外文期刊封面封底 >>

       

摘要

Developers of Molecular Dynamics (MD) codes face significant challenges when adapting existing simulation packages to new hardware. In a continuously diversifying hardware landscape it becomes increasingly difficult for scientists to be experts both in their own domain (physics/chemistry/biology) and specialists in the low level parallelisation and optimisation of their codes. To address this challenge, we describe a "Separation of Concerns" approach for the development of parallel and optimised MD codes: the science specialist writes code at a high abstraction level in a domain specific language (DSL), which is then translated into efficient computer code by a scientific programmer. In a related context, an abstraction for the solution of partial differential equations with grid based methods has recently been implemented in the (Py)OP2 library. Inspired by this approach, we develop a Python code generation system for molecular dynamics simulations on different parallel architectures, including massively parallel distributed memory systems and GPUs. We demonstrate the efficiency of the auto-generated code by studying its performance and scalability on different hardware and compare it to other state-of-theart simulation packages. With growing data volumes the extraction of physically meaningful information from the simulation becomes increasingly challenging and requires equally efficient implementations. A particular advantage of our approach is the easy expression of such analysis algorithms. We consider two popular methods for deducing the crystalline structure of a material from the local environment of each atom, show how they can be expressed in our abstraction and implement them in the code generation framework. (C) 2017 Elsevier B.V. All rights reserved.
机译:当将现有的仿真包适用于新硬件时,分子动力学(MD)代码的开发人员面临着重大挑战。在一个不断多样化的硬件景观中,科学家们越来越困难,他们在自己的域名(物理/化学/生物学)和专家中的专家,以及他们的代码的低级平行化和优化。为了解决这一挑战,我们描述了“分离关注”并行和优化的MD代码的方法:科学专业人员在域特定语言(DSL)中的高抽象级别写入代码,然后将其转换为有效的计算机由科学编程器的代码。在相关的上下文中,最近在(PY)OP2库中实现了基于网格的方法的部分微分方程解决的抽象。灵感来自这种方法,我们开发了用于不同并行架构上的分子动力学模拟的Python码生成系统,包括大规模并行分布式存储器系统和GPU。我们通过在不同硬件上研究其性能和可扩展性并将其与其他左右的仿真包进行比较来展示自动生成的代码的效率。随着日益增长的数据卷,从模拟中的物理有意义的信息的提取变得越来越具有挑战性,需要同样有效的实现。我们方法的特殊优势是这种分析算法的简单表达。我们考虑两种流行的方法,用于从每个原子的本地环境中推断材料的晶体结构,展示如何在我们的抽象中表达并在代码生成框架中实现它们。 (c)2017 Elsevier B.v.保留所有权利。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号