The emergence of machine learning, image and audio processing on edge devices has motivated research towards power efficient custom hardware accelerators. Though FPGAs are an ideal target for energy efficient custom accelerators, the difficulty of hardware design and the lack of vendor agnostic, standardized hardware compilation infrastructure has hindered their adoption. This paper introduces HIR, an MLIR-based intermediate representation (IR) to describe hardware accelerator designs. HIR combines high level language features, such as loops and multi-dimensional tensors, with programmer defined explicit scheduling, to provide a high-level IR suitable for DSL compiler pipelines without compromising control over the micro-architecture of the accelerator. HIR's explicit schedules allow it to express fine-grained, synchronization-free parallelism and optimizations such as retiming and pipelining. Built as a dialect in MLIR, it draws from best IR practices learnt from communities like those of LLVM. While offering rich optimization opportunities and a high level abstraction, HIR enables sharing of optimizations, utilities and passes with software compiler infrastructure. Our implementation shows that the code generation time of the HIR code generator is on average 1112x lower than that of Xilinx Vivado HLS on a range of kernels without a compromise on the quality of the generated hardware. We believe that these are significant steps forward in the design of IRs for hardware synthesis and in equipping domain-specific languages with a productive and performing compilation path to custom hardware acceleration.


翻译:虽然FPGA是节能定制加速器的理想目标,但硬件设计困难和缺乏供应商不可知的标准化硬件汇编基础设施阻碍了其采用。本文介绍了基于MLIR的中间代号HIR, 一个基于MLIR的中间代号(IR)来描述硬件加速器的设计。HIR结合了高层次语言特征,如循环和多维扩音器,并确定了程序员的明确时间安排,为DSL编译管道提供了高水平的IR,同时为DS编译管道提供了高水平的IR,而不损害对加速器微结构的节能加速器的节能加速器控制。HIR的明确时间表使得它能够表达精细的、不同步的平行和优化,例如重塑和管道。在MLLIR中,作为方言,它借鉴了像LLVM这样的社区所学到的最佳IR做法,同时提供了丰富的优化机会和高层次的抽象信息,HIR能够分享对加速加速加速加速加速器的微结构的节能路的控制。HIR明确时间步骤,而我们在SIS的硬件标准中,我们在SLLVLMM等社区所生成的硬件的硬件标准中,我们在SLVDIS的硬件标准执行中,在SLIS的高级硬件标准中,在SDR节流流流流流中,在SDR标准中,在SDR标准中,这是我们的平均标准中,这是一个普通的普通的普通的普通的普通的普通的普通的普通的高级的硬件的硬件的编码的编码的编码的编码的编码中,这是一个比。

0
下载
关闭预览

相关内容

编译器(Compiler),是一种计算机程序,它会将用某种编程语言写成的源代码(原始语言),转换成另一种编程语言(目标语言)。
专知会员服务
26+阅读 · 2021年4月2日
【干货书】真实机器学习,264页pdf,Real-World Machine Learning
开源书:PyTorch深度学习起步
专知会员服务
51+阅读 · 2019年10月11日
强化学习最新教程,17页pdf
专知会员服务
177+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
41+阅读 · 2019年10月9日
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
28+阅读 · 2019年5月18日
Deep Compression/Acceleration:模型压缩加速论文汇总
极市平台
14+阅读 · 2019年5月15日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
人工智能领域顶会IJCAI 2018 接受论文列表
专知
5+阅读 · 2018年5月16日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
0+阅读 · 2021年4月16日
Knowledge Representation Learning: A Quantitative Review
VIP会员
相关VIP内容
相关资讯
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
28+阅读 · 2019年5月18日
Deep Compression/Acceleration:模型压缩加速论文汇总
极市平台
14+阅读 · 2019年5月15日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
人工智能领域顶会IJCAI 2018 接受论文列表
专知
5+阅读 · 2018年5月16日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员