InfiniBand 的前世今生
今年,以 ChatGPT 为代表的 AI 大模型强势崛起,而 ChatGPT 所使用的网络,正是 InfiniBand,这也让 InfiniBand 大火了起来。那么,到底什么是 InfiniBand 呢?下面,我们就来带你深入了解 InfiniBand。
InfiniBand的发展历史
InfiniBand(也称为“无限带宽”,缩写为 IB)是一个用于高性能计算的计算机网络通信标准,它具有极高的吞吐量和极低的延迟,用于计算机与计算机之间的数据互连。InfiniBand 也用作服务器与存储系统之间的直接或交换互连,以及存储系统之间的互连。随着人工智能的兴起,它也是 GPU 服务器的首选网络互连技术。
我们来看下 InfiniBand 的发展历程:
1999 年,一家名为 InfiniBand Trade Association(IBTA)的组织发布了 InfiniBand 架构,该架构的目的是为了取代 PCI 总线,旨在提供一种高性能、低延迟的计算和存储互连技术。
2000年,InfiniBand架构规范的 1.0 版本正式发布。紧接着在 20021 年,首批 InfiniBand 产品问世,多家厂商也开始推出支持 InfiniBand 的产品,包括服务器、存储系统和网络设备等。
2003 年,InfiniBand 转向一个新的应用领域——计算机集群互联,并在当时的 TOP500 超级计算机中得到了广泛应用。
在接下来的几年中,InfiniBand 多次引入新的特性和改进,支持双倍带宽的 DDR(Double Date Rate)、远程直接内存访问和更好的虚拟化支持,这些新特性为高性能计算和存储系统提供了更多的灵活性和性能优势。
到 2019 年的 TOP500 超级计算机中,已经有 181 个采用了 InfiniBand 技术,当时的 Ethernet(以太网)仍然是主流。而到了 2015 年,InfiniBand 技术在 TOP500 超级计算机中的占比首次超过了50%,达到 51.4%。这标志着 InfiniBand 技术首次实现了对以太网技术的逆袭,成为超级计算机中最受欢迎的内部连接技术。
InfiniBand的架构
InfiniBand 是处理器和 I/O 设备之间数据流的通信链路,支持多达 64,000 个可寻址设备。InfiniBand 架构 (IBA) 是一种行业标准规范,定义了用于互连服务器、通信基础设施、存储设备和嵌入式系统的点对点交换输入/输出框架。
InfiniBand的网络架构
InfiniBand 具有普遍性、低延迟、高带宽和低管理成本,非常适合在单个连接中连接多个数据流(集群、通信、存储、管理),具有数千个互连节点。最小的完整 IBA 单元是子网,多个子网通过路由器连接起来形成一个大的 IBA 网络。
InfiniBand 系统由通道适配器、交换机、路由器、电缆和连接器组成。CA 分为主机通道适配器(HCA)和目标通道适配器(TCA)。IBA 交换机在原理上与其他标准网络交换机类似,但必须满足 InfiniBand 的高性能和低成本要求。HCA 是 IB 端节点(例如服务器或存储设备)连接到 IB 网络的设备点。TCA 是一种特殊形式的通道适配器,主要用于存储设备等嵌入式环境。
△ InfiniBand 的网络拓扑结构
InfiniBand的分层架构
InfiniBand 架构分为多个层,每个层彼此独立运行。InfiniBand 分为以下几层:物理层、链路层、网络层、传输层和上层。
物理层:物理层服务于链路层并提供这两层之间的逻辑接口。物理层由端口信号连接器、物理连接(电和光)、硬件管理、电源管理、编码线等模块组成,
链路层:链路层负责处理分组中链路数据的发送和接收,提供寻址、缓冲、流量控制、错误检测和数据交换等服务。服务质量(QoS)主要由这一层体现。
网络层:网络层负责在 IBA 子网之间路由数据包,包括单播和多播操作。网络层不指定多协议路由(例如,非 IBA 类型上的 IBA 路由),也不指定原始数据包如何在 IBA 子网之间路由。
传输层:每个 IBA 数据都包含一个传输头。传输头包含端节点执行指定操作所需的信息。通过操纵 QP,传输层的 IBA 通道适配器通信客户端形成“发送”工作队列和“接收”工作队列。
上层:上层协议和应用层负责处理更高级别的通信功能和应用需求。上层协议可以包括诸如TCP/IP(传输控制协议/互联网协议)、UDP(用户数据报协议)、MPI(消息传递接口)等常见的网络协议。它们利用底层提供的基础通信能力,通过InfiniBand网络进行数据传输和通信,用于实现应用程序之间的通信和数据交换。此外,上层还包括运行在 InfiniBand 网络上的应用程序。
InfiniBand的特点及优势
InfiniBand 最突出的一个优势,就是率先引入了 RDMA (Remote Direct Memory Access)协议。RDMA 是一种绕过远程主机而访问其内存中数据的技术,解决网络传输中数据处理延迟而产生的一种远端内存直接访问技术。
在传统的 TCP/IP 网络通信中,数据发送方需要将数据进行多次内存拷贝,并经过一系列的网络协议的数据包处理工作;数据接收方在应用程序中处理数据前,也需要经过多次内存拷贝和一系列的网络协议的数据包处理工作。
而 RDMA 允许应用与网卡之间的直接数据读写,允许接收端直接从发送端的内存读取数据,RDMA 可以显著降低传输延迟,加快数据交换速度,并可以减轻 CPU 负载,释放 CPU 的计算能力。
△ 传统传输 VS RDMA
除了 InfiniBand 对 RDMA 协议的支持,还有以下优势:
- 低延迟:InfiniBand 网络以其极低的延迟而著称。RDMA 零拷贝网络减少了操作系统开销,使得数据能够在网络中快速移动,InfiniBand 网络延迟可达到 0.7 微秒。
- 高带宽:InfiniBand 网络提供高带宽的数据传输能力。它通常支持数十Gb/s甚至更高的带宽,取决于网络设备和配置。高带宽使得节点之间可以以高速进行数据交换,适用于大规模数据传输、并行计算和存储系统等应用。
- 可扩展性:IB网络具有出色的可扩展性,适用于构建大规模计算集群和数据中心。它支持多级拓扑结构,如全局互连网络、树状结构和扁平结构,可以根据应用需求和规模进行灵活配置和扩展。此外,IB网络还支持多个子网的互连,使得不同子网之间的节点可以进行通信和数据交换。这种可扩展性使得IB网络能够应对不断增长的计算和存储需求。
- 高吞吐量:由于低延迟和高带宽的特性,IB网络能够实现高吞吐量的数据传输。它支持大规模数据流的并行传输,同时减少了中间处理和拷贝操作,提高了系统的整体性能。高吞吐量对于需要大规模数据共享和并行计算的应用非常重要,如科学模拟、大数据分析和机器学习。
在看了上文后,相信你对 InfiniBand 已经有了一定的了解。根据行业机构的预测,InfiniBand 的市场规模在 2029 年将达到 983.7 亿美元,相比 2021 年的66.6亿美元,增长 14.7 倍。在高性能计算和 AI 的强力推动下,InfiniBand 的发展前景令人期待。
相关文章:

InfiniBand 的前世今生
今年,以 ChatGPT 为代表的 AI 大模型强势崛起,而 ChatGPT 所使用的网络,正是 InfiniBand,这也让 InfiniBand 大火了起来。那么,到底什么是 InfiniBand 呢?下面,我们就来带你深入了解 InfiniBand…...

分享一下微信小程序里怎么添加社区团购功能
随着互联网的快速发展,线上购物已经成为我们日常生活的一部分。而在这个数字化时代,微信小程序作为一种便捷的电商渠道,正逐渐成为新的趋势。其中,社区团购功能更是受到广大用户的热烈欢迎。本文将探讨如何在微信小程序中添加社区…...
软考高项-IT部分
信息化体系 信息化技术应用:龙头 信息资源:核心任务 信息网络:应用基础 信息技术和产业:建设基础 信息化人才:成功之本 信息化法规:保障 信息化趋势 产业信息化、产品信息化、社会生活信息化、国民经济信息化 新型基础设施建设 2018年召开的中央经济工作会议,首…...

hugetlb核心组件
1 概述 hugetlb机制是一种使用大页的方法,与THP(transparent huge page)是两种完全不同的机制,它需要: 管理员通过系统接口reserve一定量的大页,用户通过hugetlbfs申请使用大页, 核心组件如下图: 围绕着…...

vscode配置环境变量
首先点击下面这个链接。 sMinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net 然后选择Files这个选项 向下移选择下载这个文件 解压完成之后,找到这个文件的bin目录复制路径后,添加到环境变量中 依次点击后打开cmd࿰…...
react:封装组件
封装 /components/Pagination.tsx import React from react import { Pagination } from antdconst PaginationWarp ({ total, paramsInfo, setParamsInfo }) > {return (<Paginationtotal{total}current{paramsInfo.page}showSizeChangershowQuickJumperdefaultPageSi…...

基于深度学习的视频多目标跟踪实现 计算机竞赛
文章目录 1 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的视频多目标跟踪实现 …...

linux中各种最新网卡2.5G网卡驱动,不同型号的网卡需要不同的驱动,整合各种网卡驱动,包括有线网卡、无线网卡、Wi-Fi热点
linux中各种最新网卡2.5G网卡驱动,不同型号的网卡需要不同的驱动,整合各种网卡驱动,包括有线网卡、无线网卡、自动安装Wi-Fi热点。 最近在做路由器二次开发,现在市面上卖的新设备,大多数都采用了2.5G网卡,…...
asp.net上传文件
第一种方法 前端: <div> 单文件上传 <form enctype"multipart/form-data" method"post" action"upload.aspx"> <input type"file" name"files" /> …...

JavaEE平台技术——预备知识(Web、Sevlet、Tomcat)
JavaEE平台技术——预备知识(Web、Sevlet、Tomcat) 1. Web基础知识2. Servlet3. Tomcat并发原理 1. Web基础知识 🆒🆒上个CSDN我们讲的是JavaEE的这个渊源,实际上讲了两个小时的历史课,给大家梳理了一下&a…...
基础课23——设计客服机器人
根据调查数据显示,使用纯机器人完全替代客服的情况并不常见,人机结合模式的使用更为普遍。在这两种模式中,不满意用户的占比都非常低,不到1%。然而,在满意用户方面,人机结合模式的用户满意度明显高于其他模…...

mybatis在springboot当中的使用
1.当使用Mybatis实现数据访问时,主要: - 编写数据访问的抽象方法 - 配置抽象方法对应的SQL语句 关于抽象方法: - 必须定义在某个接口中,这样的接口通常使用Mapper作为名称的后缀,例如AdminMapper - Mybatis框架底…...
如何处理前端本地存储和缓存
前端本地存储和缓存的处理是一种重要的技术,它可以帮助改善应用程序的性能和用户体验。下面是一些处理前端本地存储和缓存的常用方法: 1. 使用Web Storage API: 这是一种在浏览器中存储数据的方法,包括两种类型:loca…...

导轨式安装压力应变桥信号处理差分信号输入转换变送器0-10mV/0-20mV/0-±10mV/0-±20mV转0-5V/0-10V/4-20mA
主要特性 DIN11 IPO 压力应变桥信号处理系列隔离放大器是一种将差分输入信号隔离放大、转换成按比例输出的直流信号导轨安装变送模块。产品广泛应用在电力、远程监控、仪器仪表、医疗设备、工业自控等行业。此系列模块内部嵌入了一个高效微功率的电源,向输入端和输…...
人体姿态估计和手部姿态估计任务中神经网络的选择
一、人体姿态估计任务适合使用卷积神经网络(CNN)来解决。 人体姿态估计任务的目标是从给定的图像或视频中推断出人体的关节位置和姿势。这是一个具有挑战性的计算机视觉任务,而CNN在处理图像数据方面表现出色。 使用CNN进行人体姿态估计的一种…...
odoo16 one2many字段的 domain
最近在odoo project模块的基础上做二开,给task表加了一个版本字段version_id,然后重写了 project表的Task_ids, 并且增加了一个domain,结果折腾了大半天才搞定 写法1 这也是最初的写法: version_id fields.Many2one("hx.p…...

一份优秀测试用例的设计策略
日常工作中最为基础核心的内容就是设计测试用例,什么样的测试用例是好的测试用例?我们一般会认为数量越少、发现缺陷越多的用例就是好的用例。那么我们如何才能设计出好的测试用例呢?一份好的用例是设计出来的,是测试人员思路和方法的集合&a…...

自动驾驶行业观察之2023上海车展-----智驾供应链(3)
智驾解决方案商发展 华为:五项重磅技术更新,重点发布华为ADS 2.0和鸿蒙OS 3.0 1)产品方案:五大解决方案都有了全面的升级,分别推出了ADS 2.0、鸿蒙OS 3.0、iDVP智能汽车数字平台、智能车云服务和华为车载光最新 产品…...

倒计时丨3天后,我们直播间见!
倒计时3天,RestCloud 零代码集成自动化平台重磅发布 ⏰11 月 9 日 14:00,期待您的参与! 点击报名:http://c.nxw.so/dfaJ9...

c语言经典算法—二分查找,冒泡,选择,插入,归并,快排,堆排
一、二分查找 1、前提条件:数据有序,随机访问; 2、实现:递归实现,非递归实现 3、注意事项: 循环退出条件:low <high,low high.说明还有一个元素,该元素还要与key进行比较 mid的取值…...

微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...

python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...