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

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

3天内不再提示

赛灵思发现了阻碍SmartNIC普及的三大因素

FPGA之家 来源:FPGA之家 作者:FPGA之家 2022-08-17 16:06 次阅读

当一项创新颠覆了市场时,它便会得到市场的认可

网卡( NIC )自 20 世纪 80 年代便已出现,到本世纪初,许多公司开始投身该领域进行创新。他们最初的重点是高性能计算( HPC )。尽管业务都在以太网上运行,但是,最强大的 HPC 集群是使用 Myrinet 或 Infiniband 创建的。这些网络的网卡被设计为可以绕过操作系统( OS )内核,直接与 HPC 应用通信,从而显著提升性能。为了实现这一点,这些网卡在网络边缘应用了广泛的计算资源,使其能够从主机 CPU 上卸载常见通信任务。

这些HPC 网卡为后来的以太网网卡奠定了基础,后者内置内核旁路,适用于全球所有股票市场的电子交易。随着时间推移,这些平台进一步演进为 SmartNIC (智能网卡)或数据处理单元( DPU )。伴随超大规模用户( Hyperscaler )和云服务提供商( CSP )的出现,赛灵思发现了阻碍 SmartNIC 普及的三大因素:

1.可编程

2.可组合性

3.可移植性

赛灵思提供了一种软件定义、硬件加速平台的方法,可以高效解决这三大问题。

可编程性

过去十年里,人们做了各种尝试来为 SmartNIC 提供一个完全可编程的接口,但没有一种取得绝对成功。同时,该行业缺乏标准化语言和业经验证的软件开发及部署环境。几年前,赛灵思成为 P4 语言联盟的活跃成员,作为工业贡献者,开发了一种跨多类硬件管理网络数据包的语言。P4 语言迅速发展起来,如今大部分 SmartNIC 和 DPU 都将其用作默认编程语言。赛灵思全新 SN1000 SmartNIC 系列中所有独特的逻辑块都是用 P4 编写的。

405eb862-1dc1-11ed-ba43-dac502259ad0.png

可组合性

超大规模用户和 CSP 的第二个要求是可组合性。这是一种将新功能块动态插入到收发包处理流水线中的功能。这两条直接管理网络数据包的流水线构成了 SmartNIC 的数据平面。网卡上的第二个平面称为控制平面,作用是管理数据平面内的可编程块。如上所示,赛灵思充分利用了我们在可编程逻辑方面的领先优势,设计出一款完全可组合的网卡架构。

构成数据平面的收发流水线都有数个可编程入口点,客户可以在这些入口点上使用我们的 Vitis 软件开发平台连接其使用 P4、C/C++、HDL 或 HLS 编写的代码块。然后,Vitis 会将此代码编译成逻辑,帮助工程师在适当的数据包处理流水线中插入他们认为合适的模块。这可以让数据包以极快的速度通过数据平面,从而使赛灵思能够支持线速包处理。

其他未在其数据平面中使用可编程逻辑的供应商,必须在其 DPU 上部署大量典型的 CPU 核(通常为 Arm)来处理这些网络数据包。随着数据包速率攀升至每秒数亿个数据包,这种方法(使用 DPU 上的 CPU 核来处理数据平面上的数据包)将受到影响。我们的软件定义、硬件加速的方法将令赛灵思的 SN1000 系列明显优于竞争对手。

大型数据中心客户(如超大规模用户和 CSP)通常会要求供应商展示其产品路线图。该路线图将向客户展示供应商对其架构的承诺,以及在未来几代中推进该架构的计划。通常需要每一代都是新款芯片,在先前芯片的基础上有所改进。

可移植性

多年前,Solarflare 开始开发一种用 P4 编写的完全可移植的 SoftNIC 架构,本次成果最终被赛灵思收购。SoftNIC 是一种将所有核心 NIC 功能全部表示为代码的网卡,使得 NIC 可以在 FPGA硬件平台之间轻松移植。SoftNIC 利用直接存储器访问( DMA )引擎等标准硬件块与主机 CPU 进行通信,利用可以具有特定的芯片几何结构且通常使用了加密块的介质访问控制( MAC )块进行以太网通信。最终结果是,SoftNIC 的漏洞和新增功能无需创建新的芯片,客户只需安装软件更新即可。

构成 SN1000 可移植网卡架构的各种重要组件是 DMA 引擎、加密、MAC 块、虚拟化网卡 ( VNIC )和匹配操作引擎( MAE )的接口。VNIC 不仅是传统 OS 设备驱动程序查看网卡的方式,还可以处理校验和卸载及数据包控制。收发流水线中的 MAE 是处理虚拟网络请求的地方。在这里,Open vSwitch ( OvS )函数可用于管理主机上运行的虚拟机和容器的流量。MAE 可以显著减轻主机 CPU 处理 OS 或程序管理器网络调用的负担,有时会为 CSP 工作负载返回多达 30% 的主机 CPU 周期。MAE 的设计旨在轻松与 tc-flower 和 DPDK 通用流 API (rte_flow)进行连接,以便处理这些函数。插件入口点、VNIC、MAE 和 NET 引擎均是用软件编写并编译到逻辑门中。这就是赛灵思所谓的软件定义和硬件加速。

随着 SN1000 SmartNIC 的发布,赛灵思将提供几个可选的插件模块,在接下来的几个月还将提供更多模块。借助 SN1000,赛灵思展示了首个完全可组合且可移植的 SmartNIC,这是我们身处业届竞争最激烈的领域之一而带来的一项重大创新。

审核编辑 :李倩

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

    关注

    1602

    文章

    21296

    浏览量

    593091
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10428

    浏览量

    206518
  • 编程语言
    +关注

    关注

    9

    文章

    1878

    浏览量

    33054

原文标题:解决三大痛点,加速SmartNIC普及

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

收藏 人收藏

    评论

    相关推荐

    雷达检测概率曲线的影响因素

    在阅读雷达书籍和相关论文时发现,雷达的检测概率Pd和信噪比有一个函数关系 我的问题是如果这个函数关系是通用的,那么在门限一定的情况下,不同的雷达的检测概率曲线是不是都一样?如果不是,那么雷达的什么因素会影响这个曲线呢?
    发表于 03-27 19:54

    CYUSB3014如何实现OTG的功能?

    我们用的主平台是,想要通过CYUSB3014+FPGA实现OTG的功能,有几个问题,想请教一下。 1.是否有可以验证功能的EVK呢,我找了下FX3 DVK似乎买不到
    发表于 02-29 07:20

    有偿求助.芯片方案

    芯片电路图方案
    发表于 01-12 18:19

    AD9625的开发板AD-FMCADC3-EBZ能否与Virtex7直接连接?

    模数转换器AD9625的评估板AD-FMCADC3-EBZ能不能和的Virtex7系列FPGA开发板连接,我看到他们都具备JESD204B接口,物理接口上能直接连吗?还是说需要在使用转换接口来连接?
    发表于 12-08 08:25

    全球FPGA市场现状和发展前景展望

    概念和特点比较简单,没有完全形成气候。   :重点布局深耕中国市场 公司目前在中国内
    发表于 11-08 17:19

    研究人员发现了迄今为止最快的半导体

    科学家们发现了他们所说的迄今为止最快、最高效的半导体。尽管这种新材料是用地球上最稀有的元素之一制成,但研究人员表示,有可能会发现由更丰富的材料制成的替代物,其运行速度相当快。
    的头像 发表于 11-08 16:28 349次阅读

    【KV260视觉入门套件试用体验】Vitis AI 构建开发环境,并使用inspector检查模型

    量化 七、Vitis AI 通过迁移学习训练自定义模型 八、Vitis AI 将自定义模型编译并部署到KV260中 铺垫 Vitis AI 是什么? Vitis AI 是公司推出的一款综合 AI
    发表于 10-14 15:34

    【KV260视觉入门套件试用体验】、缺陷检测

    SDK 是一种构建在开源且被广泛采用的 GStreamer 框架上的应用框架。这种SDK 设计上支持跨 所有平台的无缝开发,包括
    发表于 09-26 15:17

    Alveo U25一体化SmartNIC平台产品详解

    电子发烧友网站提供《Alveo U25一体化SmartNIC平台产品详解.pdf》资料免费下载
    发表于 09-15 11:41 0次下载
    Alveo U25一体化<b class='flag-5'>SmartNIC</b>平台产品详解

    Alveo SN1000 SmartNIC数据表

    电子发烧友网站提供《Alveo SN1000 SmartNIC数据表.pdf》资料免费下载
    发表于 09-13 15:19 0次下载
    Alveo SN1000 <b class='flag-5'>SmartNIC</b>数据表

    英特尔SmartNIC助力加速通信与网络工作负载的方法介绍

    英特尔® FPGA SmartNIC N6000-PL 平台是第三代英特尔® SmartNIC,提供 2 个 100 GbE 端口。
    发表于 08-18 17:48 1200次阅读
    英特尔<b class='flag-5'>SmartNIC</b>助力加速通信与网络工作负载的方法介绍

    如何使用FPGA来设计智能网卡(SmartNIC)?

    智能服务器适配器或智能网卡(SmartNIC)通过从服务器的CPU上卸载网络处理工作负载和任务,提高云端和私有数据中心中的服务器性能。
    发表于 07-27 09:11 930次阅读
    如何使用FPGA来设计智能网卡(<b class='flag-5'>SmartNIC</b>)?

    发现了更快的排序算法,速度快 70%

    这一次,Google DeepMind 的全新强化学习系统 AlphaDev 发现了一种比以往更快的哈希算法,这是计算机科学领域中的一种基本算法,AI 的成果现已被纳入 LLVM 标准 C++ 库 Abseil 并开源。
    的头像 发表于 06-12 14:46 353次阅读
    它<b class='flag-5'>发现了</b>更快的排序算法,速度快 70%

    新人报道,arm芯片选择问题,请大家帮忙看看?

    大家好,我的需求是将FPGA(K7)采集的数据发送至工控机(Linux),数据量为每秒5M字节,并解析工控机发送的控制指令(50字节/秒),有同个问题如下: 1.ARM选什么型号比较好
    发表于 06-02 18:25