首页> 外文会议>European conference on object-oriented programming >Composition and Reuse with Compiled Domain-Specific Languages
【24h】

Composition and Reuse with Compiled Domain-Specific Languages

机译:使用特定领域的编译语言进行组合和重用

获取原文

摘要

Programmers who need high performance currently rely on low-level, architecture-specific programming models (e.g. OpenMP for CMPs, CUDA for GPUs, MPI for clusters). Performance optimization with these frameworks usually requires expertise in the specific programming model and a deep understanding of the target architecture. Domain-specific languages (DSLs) are a promising alternative, allowing compilers to map problem-specific abstractions directly to low-level architecture-specific programming models. However, developing DSLs is difficult, and using multiple DSLs together in a single application is even harder because existing compiled solutions do not compose together. In this paper, we present four new performance-oriented DSLs developed with Delite, an extensible DSL compilation framework. We demonstrate new techniques to compose compiled DSLs embedded in a common back-end together in a single program and show that generic optimizations can be applied across the different DSL sections. Our new DSLs are implemented with a small number of reusable components (less than 9 parallel operators total) and still achieve performance up to 125x better than library implementations and at worst within 30% of optimized stand-alone DSLs. The DSLs retain good performance when composed together, and applying cross-DSL optimizations results in up to an additional 1.82x improvement.
机译:需要高性能的程序员当前依赖于低级,特定于体系结构的编程模型(例如,用于CMP的OpenMP,用于GPU的CUDA,用于集群的MPI)。使用这些框架进行性能优化通常需要特定编程模型方面的专业知识以及对目标体系结构的深刻理解。特定领域语言(DSL)是一种有前途的替代方法,它允许编译器将特定于问题的抽象直接映射到低层特定于体系结构的编程模型。但是,开发DSL很困难,并且在一个应用程序中同时使用多个DSL更加困难,因为现有的已编译解决方案不能一起构成。在本文中,我们介绍了由Delite(可扩展的DSL编译框架)开发的四个新的面向性能的DSL。我们演示了在单个程序中一起构成嵌入在公共后端中的已编译DSL的新技术,并展示了可以在不同DSL部分中应用通用优化。我们的新DSL使用少量可重复使用的组件(总共少于9个并行运算符)实现,并且仍可实现比库实现高出125倍的性能,最差的是优化的独立DSL的30%之内。将DSL组合在一起时,它们可以保持良好的性能,并且应用交叉DSL优化可将性能提高多达1.82倍。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号