Ebb:用于CPU和GPU物理模拟的领域专用语言

摘要:设计物理模拟的编程环境具有挑战性,因为模拟依赖于各种算法和几何域。当我们尝试在异构并行架构上高效运行时,这些挑战会更加复杂。我们提出了一种名为Ebb的用于模拟的领域特定语言(DSL),可以在CPU和GPU上高效运行。与以前的DSL不同,Ebb使用三层架构来分离(1)模拟代码,(2)为几何域定义数据结构,以及(3)支持并行架构的运行时。不同的几何域实现为使用共同的统一关系数据模型的库。通过以这种方式组织模拟框架,实现模拟的程序员可以专注于每个模拟的物理和算法,而不必担心它们在并行计算机上的实施。因为所有的几何域库都是使用基于关系的共同运行时实现的,可以根据需要添加新的几何域,而无需指定内存管理的详细信息,映射到不同的并行架构,或扩展运行时接口。我们通过将其与几个广泛使用的模拟进行比较来评估Ebb,证明在可用的情况下可以与手写的GPU代码具有相当的性能,并且在没有GPU代码的情况下,超过现有的CPU性能优化多达9倍。

作者:Gilbert Louis Bernstein, Chinmayee Shah, Crystal Lemire, Zachary DeVito, Matthew Fisher, Philip Levis, Pat Hanrahan

论文ID:1506.07577

分类:Graphics

分类简称:cs.GR

提交时间:2016-02-26

PDF 下载: 英文版 中文版pdf翻译中