A Case for Open EDA Verticals

Zhiru Zhang, Matthew Hofmann, Andrew Butt
{"title":"A Case for Open EDA Verticals","authors":"Zhiru Zhang, Matthew Hofmann, Andrew Butt","doi":"10.1145/3569052.3578905","DOIUrl":null,"url":null,"abstract":"With the end of Dennard scaling and Moore's Law reaching its limits, domain-specific hardware specialization has become a crucial method for improving compute performance and efficiency for various important applications. Leading companies in competitive fields, such as machine learning and video processing, are building their own in-house technology stacks to better suit their accelerator design needs. However, currently this approach is only a viable option for a few large enterprises that can afford to invest in teams of experts in hardware, systems, and compiler development for high-value applications. In particular, the high license cost of commercial electronic design automation (EDA) tools presents a significant barrier for small and mid-size engineering teams to create new hardware accelerators. These tools are essential for designing, simulating, and testing new hardware, but can be too expensive for smaller teams with limited budgets, reducing their ability to innovate and compete with larger organizations. More recently, open-source EDA toolflows [1] [12] [11] [5] have emerged which offer a promising alternative to commercial tools, with the potential to provide more cost-effective solutions for hardware development. For example, OpenROAD [1] allows the design of custom ASICs with minimal human intervention and no licensing fees. During initial development, it was also able to take advantage of existing tools such as Yosys [14] and KLayout [6] to reduce the amount of new code required to get a working flow. However, early adoption of open-source alternatives carries risk, as open-source EDA projects often lack important features and are less reliable than commercial options. Additionally, current open-source EDA tools may produce less competitive quality of results (QoR) and may not be able to catch up to commercial solutions anytime soon. Even when EDA tool access is not an issue, designing and implementing special-purpose accelerators using conventional RTL methodology can be unproductive and incurs high non-recurring engineering (NRE) costs. High-level synthesis (HLS) has become increasingly popular in both academia and industry to automatically generate RTL designs from software programs. However, existing HLS tools do not help maintain domain-specific context throughout the design flow (e.g., placement, routing), which makes achieving good QoR difficult without significant manual fine-tuning. This hinders wider adoption of HLS. We advocate for open EDA verticals as a solution to enabling more widespread use of domain-specific hardware acceleration. The objective is to empower small teams of domain experts to productively develop high-performance accelerators using programming interfaces they are already familiar with. For example, this means supporting domain-specific frameworks like PyTorch or TensorFlow for ML applications. In order for EDA verticals to proliferate, there must first be extensible infrastructure similar to LLVM [8] and MLIR [9] from which to build new tool flows. The proper EDA infrastructure would include novel intermediate representations specifically tailored to the unique challenges in gradually lowering high-level code down to gates.","PeriodicalId":169581,"journal":{"name":"Proceedings of the 2023 International Symposium on Physical Design","volume":"20 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2023 International Symposium on Physical Design","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3569052.3578905","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

With the end of Dennard scaling and Moore's Law reaching its limits, domain-specific hardware specialization has become a crucial method for improving compute performance and efficiency for various important applications. Leading companies in competitive fields, such as machine learning and video processing, are building their own in-house technology stacks to better suit their accelerator design needs. However, currently this approach is only a viable option for a few large enterprises that can afford to invest in teams of experts in hardware, systems, and compiler development for high-value applications. In particular, the high license cost of commercial electronic design automation (EDA) tools presents a significant barrier for small and mid-size engineering teams to create new hardware accelerators. These tools are essential for designing, simulating, and testing new hardware, but can be too expensive for smaller teams with limited budgets, reducing their ability to innovate and compete with larger organizations. More recently, open-source EDA toolflows [1] [12] [11] [5] have emerged which offer a promising alternative to commercial tools, with the potential to provide more cost-effective solutions for hardware development. For example, OpenROAD [1] allows the design of custom ASICs with minimal human intervention and no licensing fees. During initial development, it was also able to take advantage of existing tools such as Yosys [14] and KLayout [6] to reduce the amount of new code required to get a working flow. However, early adoption of open-source alternatives carries risk, as open-source EDA projects often lack important features and are less reliable than commercial options. Additionally, current open-source EDA tools may produce less competitive quality of results (QoR) and may not be able to catch up to commercial solutions anytime soon. Even when EDA tool access is not an issue, designing and implementing special-purpose accelerators using conventional RTL methodology can be unproductive and incurs high non-recurring engineering (NRE) costs. High-level synthesis (HLS) has become increasingly popular in both academia and industry to automatically generate RTL designs from software programs. However, existing HLS tools do not help maintain domain-specific context throughout the design flow (e.g., placement, routing), which makes achieving good QoR difficult without significant manual fine-tuning. This hinders wider adoption of HLS. We advocate for open EDA verticals as a solution to enabling more widespread use of domain-specific hardware acceleration. The objective is to empower small teams of domain experts to productively develop high-performance accelerators using programming interfaces they are already familiar with. For example, this means supporting domain-specific frameworks like PyTorch or TensorFlow for ML applications. In order for EDA verticals to proliferate, there must first be extensible infrastructure similar to LLVM [8] and MLIR [9] from which to build new tool flows. The proper EDA infrastructure would include novel intermediate representations specifically tailored to the unique challenges in gradually lowering high-level code down to gates.
开放EDA垂直领域的案例
随着Dennard缩放和摩尔定律的终结,特定领域的硬件专门化已经成为提高各种重要应用的计算性能和效率的关键方法。在机器学习和视频处理等竞争激烈的领域,领先的公司正在建立自己的内部技术堆栈,以更好地满足他们的加速器设计需求。然而,目前这种方法只是少数大型企业的可行选择,这些企业有能力投资于高价值应用程序的硬件、系统和编译器开发方面的专家团队。特别是,商业电子设计自动化(EDA)工具的高许可成本对中小型工程团队创建新的硬件加速器构成了重大障碍。这些工具对于设计、模拟和测试新硬件是必不可少的,但是对于预算有限的小型团队来说过于昂贵,从而降低了他们创新和与大型组织竞争的能力。最近,开源EDA工具流[1][12][11][5]已经出现,它为商业工具提供了一个有前途的替代方案,具有为硬件开发提供更具成本效益的解决方案的潜力。例如,OpenROAD[1]允许以最小的人为干预和无许可费用设计定制asic。在最初的开发过程中,它还能够利用现有的工具,如Yosys[14]和KLayout[6],以减少获得工作流程所需的新代码量。然而,早期采用开源替代方案是有风险的,因为开源EDA项目通常缺乏重要的特性,而且比商业选择更不可靠。此外,当前的开源EDA工具可能产生的结果质量(QoR)竞争力较弱,并且可能无法在短期内赶上商业解决方案。即使在EDA工具访问不成问题的情况下,使用传统的RTL方法设计和实现特殊用途的加速器也可能是非生产性的,并且会产生高昂的非重复工程(NRE)成本。从软件程序中自动生成RTL设计的高级合成(High-level synthesis, HLS)在学术界和工业界都越来越流行。然而,现有的HLS工具不能在整个设计流程中帮助维护特定于领域的上下文(例如,放置、路由),这使得在没有大量手动微调的情况下难以实现良好的QoR。这阻碍了HLS的广泛采用。我们提倡将开放的EDA垂直领域作为一种解决方案,以支持更广泛地使用特定于领域的硬件加速。目标是使领域专家组成的小团队能够使用他们已经熟悉的编程接口高效地开发高性能加速器。例如,这意味着为ML应用程序支持特定领域的框架,如PyTorch或TensorFlow。为了使EDA垂直领域激增,首先必须有类似于LLVM[8]和MLIR[9]的可扩展基础设施,从中构建新的工具流。适当的EDA基础设施应该包括新的中间表示,专门针对逐步将高级代码降低到门的独特挑战。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信