0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA在微软云azure中的应用

FPGA之家 来源:FPGA之家 作者:FPGA之家 2022-06-17 09:59 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

随着5G通信技术的发展,云计算和边缘计算业务也将快速增长。由于云计算多样性和边缘环境复杂性的特点,将决定了在CPUGPUFPGAASIC中,不会只有一种芯片存在。所以FPGA一定可以寻找到它的应用方向。相较于其它几种芯片,FPGA具有以下几种优势:

1 灵活可编程。FPGA是以LUT作为基本结构的器件,可以根据需求的变化对其擦除重写,运行新的程序。

2 高带宽。FPGA芯片有很多高速管脚,可以连接多颗DRAM,产生较高的带宽。

3 复杂的数据处理能力。FPGA能够有针对性的处理逻辑关系复杂的程序,这相比于CPU,GPU等依赖指令处理数据的芯片有优势,因为它能够做到更低的延迟。

FPGA也存在以下劣势限制了它的发展:

1 编程复杂,开发周期较长。RTL的开发包括了架构设计,RTL代码,仿真验证,上板调试。一个项目的周期往往是软件开发的几倍,团队规模也较大。这些既提高了开发成本,又没法适应不断迭代的产品需求。

2 粗粒度硬件结构导致资源利用率低。FPGA达不到100%的资源利用率,这是对资源的一种浪费,体现在经济上是提高了成本。

以上两方面都可以归结到成本这一点上,但是如果能够解决1问题,那么2问题也就迎刃而解了。因为如果FPGA的市场应用多了,那么其制造成本也会下降。1问题的解决一直在路上,但是一直没有解决。HLS等类似软件编程语言的出现可以提高FPGA的开发效率,但是相比于纯软件开发语言还是存在一定复杂性。而相对于RTL语言来说,HLS语言的硬件描述性不够鲜明。所以硬件开发人员更多的会选择硬件描述清晰的verilog,system Verilog等语言。

这些缺点并不意味着我们对FPGA在未来AI应用中抱着悲观的想法,一个是未来场景的复杂性和多样性,一个是FPGA也在寻求改进和发展。第一个决定了FPGA一定能够在AI中活下去,第二个决定了FPGA在AI中活的怎么样。

接下来我们来了解一下FPGA在微软云azure中的应用。

Azure stack edge

微软在边缘做了产品布局,依据边缘的规模,提供了两类产品。一类是针对计算任务繁重的企业用户,其提供了基于GPU和FPGA的Pro设备,能够实现边缘端的数据预处理,包括聚合数据,修改数据等,以及运行ML模型。另外一类是针对随时移动的用户,提供了小而便携的设备。这些设备使用了intel针对视觉处理专门研发的VPU芯片。虽然在2024年基于FPGA的pro设备将停用,而迁移到基于GPU的设备上。但是VPU芯片的出现,反映了在边缘计算应用中,FPGA所发生的可能转变。在多变的边缘目标上,小芯片能够更有针对性的保留有效的计算资源,这样精简了结构,降低了功耗。Intel VPU是集成了Leon处理器,12个SHAVE计算核以及一个DRAM的SoC结构。SHAVE是一个向量处理器,能够进行大量的向量运算。所以VPU能够适合运行ML模型,以及进行一些图像处理方面的工作。目前VPU能够支持21种神经网络算子,包括conv,relu等。这些神经网络可以通过其编译器工具NCAPI转化为可以在VPU中执行的指令。目前能够支持inception,mobilenet,googlenet,ssd,alexnet等很多卷积和LSTM网络。

5fac2114-edce-11ec-ba43-dac502259ad0.png

超算中心的FPGA

微软在数据中心系统性的构建了一个FPGA集群,这个FPGA集群能够实现内部和外部server的互联。在顶层软件的分配调度下,可以执行多种不同的任务,包括web search ranking, deep neural networks, expensive compression等。

5fc6bbaa-edce-11ec-ba43-dac502259ad0.png

FPGA集群的基本结构如上图所示:包括了两块CPU和一块altera的FPGA芯片。FPGA通过PCIE和一个NIC来和两块CPU进行通信。NIC保证了FPGA可以实现原位处理网络数据包。FPGA之间还通过ToR实现互联,ToR保证了一个任务能够被分割为多个子任务,然后分配给多个FPGA处理。在逻辑层面,FPGA定义了Lightweight Transport Layer(LTL)和Elastic Router(ER)。LTL实现了不同的FPGA芯片之间的互联,这样保证了远程FPGA之间的通信,使得整个FPGA集群处于一个整体中。ER是用于同一个FPGA芯片中不同任务的互联。LTL和ER的混合使用能够灵活的为FPGA分配不同任务,满足数据中心任务多样性需求。ToR形成了三层结构,L0层连接了24个FPGA设备,L1连接了960个设备,L2级可能连接了超过几百万的设备。L0级的round-trip延时大概在2.8us,L1级平均在7.7us,而L2级在22us。

5fef0a42-edce-11ec-ba43-dac502259ad0.png

FPGA架构

微软的神经网络加速器主要是针对单batch低延迟来设计的,其所期望的是能够最大限度的将weight缓存在片上,通过将一个大的网络进行分割,分配到多个FPGA芯片上实现。其分割的子网络的权重大小可以适配一颗FPGA芯片上weight的缓存空间。架构将计算重点放在矩阵-向量乘法上,这个也是合理的,因为LSTM,CNN网络大部分计算量都由矩阵乘法承担。其它函数运算,包括向量加法,乘法,sigmoid,tanh等函数,则统一到同一个多功能函数模块中。这样做的好处是简化了FPGA架构,同时也简化了数据流。因此其整个架构中没有多端口共享的memory,不存在对多数据访问冲突的处理。同时也简化了指令,消除了对指令依赖关系的判断和检测。FPGA架构中有对指令的进一步分解和处理,所以软件端的指令非常简单,就是通过C语言的宏定义实现的。

600c6024-edce-11ec-ba43-dac502259ad0.png

其矩阵向量乘法结构是由多个dot-product结构组成的,多个dot-product和累加器形成了一个tile,然后多个tile就构成了一个大的矩阵向量乘法。

602429fc-edce-11ec-ba43-dac502259ad0.png

603e6902-edce-11ec-ba43-dac502259ad0.png

软件结构

神经网络加速器的工具链包括:CNTK(微软自定义的一个指令级描述),tensorflow或者caffe的图文件作为输入,然后通过前端转化为IR表示,然后依据网络大小以及FPGA中资源情况对图进行分割和优化,然后产生硬件可执行指令。如果网络较大,那么网络可以被分割成多个子图,部署到不同FPGA上。如果一个矩阵乘法过大,那么可以被分割成多块来实现。对于不可实现的神经网络算子,工具链可以将多个不可实现算子组合成一个子图,在CPU上完成。

60564c98-edce-11ec-ba43-dac502259ad0.png

引用

1accelerating artificial intelligence bing whitepaper

2Cloud Scale Acceleration Architecture

3A Configurable Cloud-ScaleDNN Processor for Real-Time AI

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1664

    文章

    22503

    浏览量

    639274
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11327

    浏览量

    225903

原文标题:FPGA在microsoft azure的应用

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    亚马逊科技正式推出Amazon Security Agent按需渗透测试功能

    里程碑式的改进将渗透测试从周期性的瓶颈转变为按需可得的功能,并可随用户亚马逊科技、微软Azure、谷歌GCP、其他提供商以及本地环境
    的头像 发表于 04-08 13:56 139次阅读

    行业观察 | 微软3月修复83个漏洞,多个高危漏洞被标记为高概率被利用

    Azure工作负载、数据库管理工具等多个企业核心业务领域,需要IT团队高度重视并有序部署。本月修复的漏洞,虽无已确认被黑客主动利用的“零日漏洞”,但微软将多个
    的头像 发表于 03-17 17:02 1185次阅读
    行业观察 | <b class='flag-5'>微软</b>3月修复83个漏洞,多个高危漏洞被标记为高概率被利用

    SD-WAN 专线:为亚马逊微软访问提速的核心逻辑

    前言随着全球化业务的深入推进,越来越多国内企业选择亚马逊(AWS)、微软Azure)等国际公有服务部署核心业务。无论是跨境电商的平台
    的头像 发表于 03-05 15:00 857次阅读
    SD-WAN 专线:为亚马逊<b class='flag-5'>云</b>、<b class='flag-5'>微软</b><b class='flag-5'>云</b>访问提速的核心逻辑

    微软Azure数据中心国际版全面对接NVIDIA Rubin平台

    2026年CES大会见证了NVIDIA Rubin问世,而微软Azure数据中心(国际版)凭借前瞻战略已实现全面对接。通过散热与网络领域的超前布局,Azure(国际版)将系统化方法与
    的头像 发表于 03-03 09:56 529次阅读

    AMD与微软与西门子合作加速软件定义汽车发展

    AMD 日前宣布推出新功能,旨在依托微软 Azure平台上的云端仿真和数字孪生技术,支持汽车软件的前移式开发。通过采用前移式开发方法,OEM 厂商和一级供应商能够提升开发效率、降低开发风险,并加速软件定义汽车的上市进程。
    的头像 发表于 01-23 09:15 2138次阅读

    Azure安全基础知识:构建上防护体系

    前言计算为现代企业带来了灵活性与效率,同时也对安全防护提出了更高要求。MicrosoftAzure提供了一系列全面的安全基础服务与实践指南,帮助组织云端构建稳固的防御体系。一、安全事件响应与业务
    的头像 发表于 01-09 13:23 290次阅读
    <b class='flag-5'>Azure</b>安全基础知识:构建<b class='flag-5'>云</b>上防护体系

    Arm架构助力Azure Cobalt 100虚拟机工作负载性能提升

    自从微软推出基于 Arm 架构的 Azure Cobalt 100 虚拟机 (VM) 以来,已有众多客户选择这款新实例运行各类用例。目前,Cobalt 100 虚拟机已在全球微软 Azure
    的头像 发表于 12-15 14:42 809次阅读
    Arm架构助力<b class='flag-5'>Azure</b> Cobalt 100虚拟机工作负载性能提升

    微软全新AI超级工厂Fairwater亚特兰大落成

    微软正式发布位于美国乔治亚州亚特兰大的 Azure AI 数据中心 Fairwater 站点。全新的数据中心将与威斯康星州的首个 Fairwater 站点、前几代 AI 超级计算机以及全球 Azure 数据中心深度互联,共同构建
    的头像 发表于 12-09 17:31 856次阅读

    工业MQTT上网关有哪些应用场景

    场景描述 :智能制造、能源管理等领域,大量分散的工业设备(如PLC、传感器、数控机床)需实时数据采集与远程监控。 网关作用 :通过MQTT协议,网关将设备数据高效上传至平台(如阿里、华为
    的头像 发表于 11-27 11:22 642次阅读

    行业观察 | Azure、RDP、NTLM 均现高危漏洞,微软发布2025年8月安全更新

    微软2025年8月的“补丁星期二”发布了针对Windows、Office、SQLServer、Exchange、Azure等产品的107个漏洞的修复更新。本月更新包含:✦1个已公开披露的零日漏洞
    的头像 发表于 08-25 17:48 2502次阅读
    行业观察 | <b class='flag-5'>Azure</b>、RDP、NTLM 均现高危漏洞,<b class='flag-5'>微软</b>发布2025年8月安全更新

    奥比光助力2025年国际咏春拳大赛智能化升级

    Femto Bolt是奥比光与微软联合打造的先进iToF 3D相机,被微软官方推荐为Azure Kinect DK的理想替代方案,不仅具备与微软
    的头像 发表于 08-15 15:09 1586次阅读

    PLL技术FPGA的动态调频与展频功能应用

    随着现代电子系统的不断发展,时钟管理成为影响系统性能、稳定性和电磁兼容性(EMI)的关键因素之一。FPGA设计,PLL因其高精度、灵活性和可编程性而得到广泛应用,本文将深入探讨PLL技术
    的头像 发表于 06-20 11:51 2891次阅读
    PLL技术<b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的动态调频与展频功能应用

    LanzaJet拓展与微软的合作关系,助力全球业务增长

    领先的下一代燃料技术公司和可持续燃料生产商LanzaJet, Inc.,今天宣布与微软达成新协议,选用Microsoft Azure作为其首选平台。 该协议标志着LanzaJet与微软
    的头像 发表于 06-18 13:52 888次阅读

    微软Microsoft Azure AI Foundry国际版的十大技术突破

    当传统软件开发还在以“季度”为单位迭代时,Microsoft Azure Al Foundry(国际版)正掀起一场效率革命:通过整合代码、协作与的全栈平台,帮助开发者几天内完成从创意到生产的全
    的头像 发表于 05-29 16:28 1903次阅读

    Arm携手微软共筑计算和PC未来

    计算平台并从中受益。无论是 Microsoft Azure 的云端还是 Windows on Arm PC 的边缘侧,开发者可以在任何地方加速其应用和工作负载。
    的头像 发表于 05-28 14:08 1062次阅读