历史上的今天
今天是:2024年10月23日(星期三)
2020年10月23日 | 微软发明的GPU和FPGA之间数据传输方案
2020-10-23 来源:爱集微
2018年5月,在Bulid大会上,微软宣布 Project Brainwave 开放预览,这是一种用于深度神经网络处理的架构,可以用于Azure与边缘环境,并且可以让Azure成为实时运行人工智能最快的云平台。
为什么微软要基于FPGA来进行人工智能芯片设计呢?这是因为当时微软的搜索引擎都是依靠CPU驱动,尽管英特尔等公司不断改进CPU,但是这些芯片还是不能满足微软的需求。而此时恰好FPGA能弥补这个不足。
图形处理单元(GPU)已经被用于图形应用许多年,近年来也被应用于其他例如图形处理、搜索以及其他一般的应用。虽然FPGA和GPU均可以被视为专用处理器,但是在某些场合,如果FPGA与GPU之间可以进行通信以及任务的共享、转交,会更加高效的完成任务,这也是基于FPGA设计人工智能芯片的重要设计方案之一。
为了实现FPGA与GPU之间的通信,微软在2013年8月16日申请了一项名为“GPU和FPGA组件之间的直接通信的方法和系统”的发明专利(申请号:201380044351.6),申请人为微软技术许可有限责任公司。
根据该专利目前公开的资料,让我们一起来看看这项FPGA与GPU之间的通信技术吧。

如上图,为用于GPU和FPGA组件之间直接通信的系统框图,系统100包括存储计算机指令的存储器、中央处理单元(CPU)102、图形处理单元(GPU)104和现场可编程门阵列(FPGA)106,这些部件通过总线进行连接,传输数据包括经由PCIe交换机在GPU和FPGA之间直接传输数据。
而要达到数据传输的目的,必然不可避免要对于数据在硬件中进行编址,也就是例如基于虚拟存储器存储的数据,被存储在不连续的块中的数据的物理地址中时,需要进行地址编码。当数据在GPU与FPGA之间传输时,数据可以从FPGA的存储器传输到GPU中,由于采用了编址,因此也就不会发生数据错位、丢失等问题。
在GPU和FPGA通信中,也分为直接通信和间接通信两种方式,首先我们来看看间接通信方式。

如上图,为GPU和FPGA组件之间间接通信的系统示意图,如图所示,数据202经由GPU、快速PCI交换机、CPU和CPU存储器,在GPU存储器和FPGA存储器之间交换。这是一个间接的路径,由于在GPU和FPGA之间经过了CPU,因此也被称为GPU-CPU-FPGA传输。
这种间接传输的方式,虽然可以保证数据在GPU和FPGA之间共享,但是由于数据经过了两次PCIe交换机并由于操作系统和CPU存储器硬件两者的等待时间加时,因此增加了通信等待时间和操作系统的开销。

接着,我们来看看GPU和FPGA组件之间直接通信的流程图,如上图所示,首先要获取标识用于直接访问FPGA的存储器的地址的虚拟指针,例如FPGA驱动程序可以生成标识用于直接访问FPGA中的存储器的地址的虚拟指针。
之后就可以启动虚拟指针到与FPGA外部的GPU相关联的图形处理单元(GPU)驱动程序的传输,经过外部的总线接口,可以直接启动GPU与FPGA之间的数据传输,而无需作为中间操作来将数据存储在中央处理单元的存储器中。
以上就是微软发明的GPU与FPGA之间的数据传输方案,在微软进行基于FPGA的人工智能芯片设计的过程中,FPGA担任着机器学习算法的主要硬件基础。这种在GPU与FPGA之间传输数据的技术,势必会加速人工智能芯片的发展以及加快深度学习技术的发展。
史海拾趣
|
我有一个WINDOWS MOBILE的PDA,用的三星CPU,有高手能把这个系统改成WINCE.NET么?当然是要付费的,价钱商量. 我有一个WINDOWS MOBILE的PDA,用的三星CPU,有高手能把这个系统改成WINCE.NET么?当然是要付费的,价钱商量. 联系我QQ:86163938 MSN:myfm3a@hotmail.com 急… 查看全部问答> |
|
DirectDraw和DirectShow如何协调,正十分迷茫中 我开发一个游戏,采取独占模式,想在DIRECTDRAWSURFACE表面开辟一块区域用于播放视频,现在是没有办法看见视频播放的画面, 但是如果我把DirectDraw相关的代码去掉,只保留播放视频的代码,视频是能够正常播放的。另外请教高手知道如何使用MediaPl ...… 查看全部问答> |
|
一、变频恒压供水的特点1. 节能,可以实现节电20%-40%,能实现绿色用电。2. 占地面积小,投入少,效率高。3. 配置灵活,自动化程度高,功能齐全,灵活可靠。4. 运行合理,由于是软起和软停,不但可以消除水锤效应,而且电机轴 ...… 查看全部问答> |
|
购买或者黑金FPGA开发板换购ARM开发板,野火,神舟均可,多退少补。 我的FPGA板子是今年4月份在黑金官方淘宝店买的 RMB399 换购野火开发板或者神舟开发板。 不愿换购的话。 RMB 270 收野火(+液晶+jlink) RMB 200收神舟(+液晶+jlink) 可以的话 加QQ 411101807 这个论坛不常上,请直接加QQ,学生党,非诚 ...… 查看全部问答> |
|
MSP430G2开发板 ,LaunchPad实验板 元件 学习 TPS77301DGK品牌TI封装MSOP8 MSP430G2开发板 ,LaunchPad实验板 元件 学习 TPS77301DGK品牌TI封装MSOP8 大概:TPS77301DGK升降压稳压管复位IC供应小结 1.5-- 5.5v 常用的电源电压监督员(中职),或重置输出电压。 可能相关 :当前级接上高阻抗的后级它主要提供适切的输出电压 ...… 查看全部问答> |




