3.8 Proceedings Paper

Lifting C Semantics for Dataflow Optimization

出版社

ASSOC COMPUTING MACHINERY
DOI: 10.1145/3524059.3532389

关键词

parallelism; dataflow analysis; automatic parallelization

资金

  1. EuroHPC-JU [101034126]
  2. European Union's Horizon2020 programme
  3. European Research Council under the PSAP grant [101002047]
  4. RED-SEA project [955776]
  5. DEEP-SEA project [955606]

向作者/读者索取更多资源

The research proposes lifting C programs to a parametric dataflow representation for static data-centric analysis and automatic high-performance code generation. By separating writing code from optimizing for different hardware, efficient specialized versions can be generated from simple, portable C source code with the click of a button. This approach can identify parallelism and outperform existing compilers.
C is the lingua franca of programming and almost any device can be programmed using C. However, programming modern heterogeneous architectures such as multi-core CPUs and GPUs requires explicitly expressing parallelism as well as device-specific properties such as memory hierarchies. The resulting code is often hard to understand, debug, and modify for different architectures. We propose to lift C programs to a parametric dataflow representation that lends itself to static data-centric analysis and enables automatic high-performance code generation. We separate writing code from optimizing for different hardware: simple, portable C source code is used to generate efficient specialized versions with a click of a button. Our approach can identify parallelism when no other compiler can, and outperforms a bespoke parallelized version of a scientific proxy application by up to 21%.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

3.8
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据