ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

自动驾驶网络大学课程W14L1 ML硬件架构 II

2022-04-30 21:04:56  阅读:158  来源: 互联网

标签:硬件 语言 W14L1 ML II 内存 加速器 设计


Week 14 Lesson 1

Week 14课程的材料是关于ML的硬件架构的,作为课程材料的论文也是非常的牛,作者都是来自于Stanford大学的教授。

课程材料的内容总结起来就是实现了一种针对ML优化的编程语言,该语言抽象了ML计算的硬件实现,就是说用这个语言编写的ML代码可以方便地利用ML的硬件加速器。

做这样一个语言的出发点是基于FPGA的ML加速器如果采用HDL编程的话对软件人员非常不友好,因为HDL就不是从算法的角度描述问题的。作者设计了一种针对ML的新的领域特定语言Domain Specified Language,自己设计了编译器可以将基于这种语言的代码编译成Chisel,然后Chisel可以编译成基于HDL的FPGA设计。

ML的优化主要是针对控制循环的优化,例如一个For循环的矩阵乘法可以直接利用硬件实现,但是要解决参数的传递,硬件矩阵乘法器的软件抽象,编程接口以及如何通过软件指定硬件实现的参数等。

ML的第二个优化是内存的设计,CPU只有寄存器和内存,Cache也算吧,而ML的硬件加速可以设计多种内存,软件可以指定代码使用哪种内存,并控制数据在不同类型的内存间的拷贝。

ML的第三个优化是关于接口的,硬件模块和软件之间的接口,具体设计类似FPGA的HLS。

作者牛就牛在实现了这个语言的定义,编译器的开发,拿常用的ML算法做了对比,然后把结果摆出来了。

结论:

本文设计了用于在可重构架构上设计ML应用程序加速器的语言。Spatial包括用于控制、内存和设计调优的特定于硬件的抽象,这有助于在高效加速器设计和性能驱动加速器设计之间提供平衡。我们已经证明,Spatial可以从单一源针对一系列可重构架构,并可以实现比SDAccel平均2.9倍的加速,而代码减少42%。Spatial语言和编译器是斯坦福大学一个正在进行的开源项目。

 

 

标签:硬件,语言,W14L1,ML,II,内存,加速器,设计
来源: https://www.cnblogs.com/qiuzhiqiuzhi/p/16211264.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有