首页> 外文会议>IEEE International Symposium on Rapid System Prototyping >YAPPA: A compiler-based parallelization framework for irregular applications on MPSoCs
【24h】

YAPPA: A compiler-based parallelization framework for irregular applications on MPSoCs

机译:YAPPA:基于编译器的并行化框架,用于MPSoC上的不规则应用

获取原文

摘要

Modern embedded systems include hundreds of cores. Because of the difficulty in providing a fast, coherent memory architecture, these systems usually rely on noncoherent, non-uniform memory architectures with private memories for each core. However, programming these systems poses significant challenges. The developer must extract large amounts of parallelism, while orchestrating communication among cores to optimize application performance. These issues become even more significant with irregular applications, which present data sets difficult to partition, unpredictable memory accesses, unbalanced control flow and fine grained communication. Hand-optimizing every single aspect is hard and time-consuming, and it often does not lead to the expected performance. There is a growing gap between such complex and highly-parallel architectures and the high level languages used to describe the specification, which were designed for simpler systems and do not consider these new issues. In this paper we introduce YAPPA (Yet Another Parallel Programming Approach), a compilation framework for the automatic parallelization of irregular applications on modern MPSoCs based on LLVM. We start by considering an efficient parallel programming approach for irregular applications on distributed memory systems. We then propose a set of transformations that can reduce the development and optimization effort. The results of our initial prototype confirm the correctness of the proposed approach.
机译:现代嵌入式系统包括数百个内核。由于难以提供快速,一致的内存体系结构,因此这些系统通常依赖于每个内核都具有专用存储器的非一致,非均匀的存储器体系结构。然而,对这些系统进行编程带来了巨大的挑战。开发人员必须提取大量并行度,同时协调内核之间的通信以优化应用程序性能。这些问题在不规则的应用程序中变得更加严重,因为它们导致数据集难以分区,不可预测的内存访问,不平衡的控制流和精细的通信。手动优化每个方面都很困难且耗时,并且通常无法达到预期的性能。这种复杂且高度并行的体系结构与用于描述规范的高级语言之间的差距越来越大,这些语言是为较简单的系统设计的,不考虑这些新问题。在本文中,我们介绍了YAPPA(又一种并行编程方法),这是一种用于在基于LLVM的现代MPSoC上自动对不规则应用程序进行并行化的编译框架。我们首先考虑一种针对分布式存储系统上不规则应用程序的有效并行编程方法。然后,我们提出了一组可以减少开发和优化工作的转换。我们初始原型的结果证实了所提出方法的正确性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号