CN112866059B - 一种基于人工智能应用的无损网络性能测试方法和装置 - Google Patents
一种基于人工智能应用的无损网络性能测试方法和装置 Download PDFInfo
- Publication number
- CN112866059B CN112866059B CN202110060368.7A CN202110060368A CN112866059B CN 112866059 B CN112866059 B CN 112866059B CN 202110060368 A CN202110060368 A CN 202110060368A CN 112866059 B CN112866059 B CN 112866059B
- Authority
- CN
- China
- Prior art keywords
- training
- network
- server
- computing
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种基于人工智能应用的无损网络性能测试方法和装置。服务器作为管理节点将待训练数据包分发给多个作为计算节点的服务器;所述服务器作为计算节点与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;在训练结束后将训练结果反馈给所述管理节点;管理节点确定所述训练结果是否满足预设条件,如果否,根据所述训练结果更新所述计算节点上的训练模型的参数,并将待测数据包重新分发给所述多个计算节点继续进行训练,直到反馈的训练结果满足预设条件;计算网络训练性能值和加速比,并获取无损网络进行AI训练时的丢包率、时延和平均带宽。该方法能够对基于人工智能应用的无损网络进行全面、准确的性能测试。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种基于人工智能应用的无损网络性能测试方法和装置。
背景技术
目前随着大数据、云计算、人工智能等新兴网络应用的快速发展,数据中心对分布式数据处理的场景逐渐增加,在这种情况下,数据中心东西向流量快速增长,数据中心网络建设要求也从追求高带宽、无阻塞向低时延、无丢包方向演变。
无损网络是一种新型、低时延的网络,无损网络在拥塞控制、流量控制、分组转发及路由选择等方面具有诸多优势,能够有效降低数据传输时延和丢包率,提升数据传输速率,这为新兴网络应用的处理提供了重要的数据传输环境支持。
无损网络性能测试是判断并检验无损网络传输性能的前提,无损网络性能测试将为企业网络环境建设提供重要的参考,当前无损网络性能测试主要是对无损网络在高性能数据库、大数据处理平台、HPC业务及虚拟化场景等主流业务下的网络性能测试。
AI分布式深度学习任务具有计算密集和通信密集的特点,这对无损网络性能提出了更高的要求,任何一个环节的通信问题都可能会对AI任务造成影响,在这种情况下,对AI业务背景下的无损网络性能测试显得尤为必要。
发明内容
有鉴于此,本申请提供一种基于人工智能应用的无损网络性能测试方法和装置,能够对基于人工智能应用的无损网络进行全面、准确的性能测试。
为解决上述技术问题,本申请的技术方案是这样实现的:
在一个实施例中,提供了一种基于人工智能应用的无损网络性能测试方法,所述方法包括:
通过部署网络拓扑构建无损网络人工智能AI业务测试平台,其中,所述网络拓扑包括:服务器和交换机;所述服务器之间,以及计算节点之间通过交换机通信;
所述服务器作为管理节点将待训练数据包分发给多个作为计算节点的服务器;
所述服务器作为计算节点与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;在训练结束后将训练结果反馈给所述管理节点;
所述服务器作为管理节点确定所述训练结果是否满足预设条件,如果否,根据所述训练结果更新所述计算节点上的训练模型的参数,并将待测数据包重新分发给所述多个计算节点继续进行训练,直到反馈的训练结果满足预设条件;计算网络训练性能值和加速比,并获取无损网络进行AI训练时的丢包率、时延和平均带宽。
在另一个实施例中,提供了一种基于人工智能应用的无损网络性能测试装置,通过部署网络拓扑构建无损网络AI业务测试平台,其中,所述网络拓扑包括:服务器和交换机;所述服务器之间,以及计算节点之间通过交换机通信;所述装置包括:发送单元、接收单元、训练单元、确定单元、计算单元和获取单元;
所述发送单元,用于所在装置作为管理节点时,将待训练数据包分发给多个作为计算节点的服务器;所在装置作为计算节点时,将所述训练单元的训练结果反馈给作为管理节点的服务器;
所述接收单元,用于所在装置作为计算节点时,接收所述作为管理节点的服务器分发的待训练数据包;所在装置作为管理节点时,接收计算节点反馈的训练结果;
所述训练单元,用于所在装置为计算节点时,与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;
所述确定单元,用于所在装置作为管理节点,当所述接收单元接收到计算节点反馈的训练结果时,确定所述训练结果是否满足预设条件,如果否,根据所述训练结果更新所述计算节点上的训练模型的参数,并触发所述发送单元将待测数据包重新分发给所述多个计算节点继续进行训练,直到反馈的训练结果满足预设条件;
所述计算单元,用于所述装置作为管理节点,当所述确定单元确定计算节点反馈的训练结果满足预设条件时,计算网络训练性能值和加速比;
所述获取单元,用于所述装置作为管理节点,当所述确定单元确定计算节点反馈的训练结果满足预设条件时,获取无损网络进行AI训练时的丢包率、时延和平均带宽。
由上面的技术方案可见,上述实施例中通过构建无损网络AI业务测试平台,对基于人工智能应用的无损网络进行性能测试,获取性能测试指标的各指标值:丢包率、平均带宽、时延、网络训练性能和加速比。该方案能够通过构建的无损网络AI业务测试平台对基于人工智能应用的无损网络进行全面、准确的性能测试。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中无损网络AI测试网络拓扑示意图;
图2为本申请实施例中网络拓扑部署示意图;
图3为本申请实施例中基于人工智能应用的无损网络性能测试流程示意图;
图4为本申请实施例中应用于上述技术的装置结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
下面以具体实施例对本发明的技术方案进行详细说明。下面几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本申请实施例中提供一种基于人工智能应用的无损网络性能测试方法,通过构建无损网络AI业务测试平台,对基于人工智能应用的无损网络进行性能测试,获取性能测试指标的各指标值:丢包率、平均带宽、时延、网络训练性能和加速比。该方案能够通过构建的无损网络AI业务测试平台对基于人工智能应用的无损网络进行全面、准确的性能测试。
下面结合附图给出本申请实施例中构建无损网络AI业务测试平台的过程。
基于网络拓扑构建无损网络AI业务测试平台,所述网络拓扑包括:服务器和交换机;其中,所述服务器之间通过交换机通信。
参见图1,图1为本申请实施例中无损网络AI测试网络拓扑示意图。图1中包括:服务器(管理节点、计算节点)和交换机(叶交换机和脊交换机);其中,服务器存在两种角色:管理和计算,称为管理节点和计算节点;
一台服务器既可以作为计算节点,也可以作为管理节点。在一次训练任务中该服务器只能承担一种角色,整个训练网络框架通常是由一台管理节点服务器与多台计算节点服务器构成。
本申请实施例中网络拓扑基于二层无阻塞Spine Leaf拓扑模型部署,将所述网络拓扑划分为叶层和脊层,叶层和脊层网络中分别分布着叶交换机和脊交换机,管理节点与叶交换机相连。叶交换机完成设备接入功能,脊交换机完成路由汇聚功能。脊交换机带宽、包转发率等性能较叶交换机更优,但是为了更加简洁的完成无损网络搭建,本申请实施例中叶交换机和脊交换机都采用Spectrum-2 Ethernet Switch。与三层网络架构相比,叶脊网络减少了数据中心服务器与交换机之间的路径,提高了网络传输性能。服务器机型可采用SuperServer 4028GR-TR,但不限于此。
上述网络拓扑为本申请实施例中的一种网络拓扑架构示意图,具体实现时不限于上述网络拓扑架构。
在具体实现时,基于上述的网络拓扑进行软硬件配置,以完成无损网络AI业务测试平台的构建。参见图2,图2为本申请实施例中网络拓扑部署示意图。
针对进行无损网络AI测试的网络拓扑的部署包括硬件和件部署,其中,硬件部署包括对服务器(管理节点和计算节点服务器)、网络设施(交换机和物理连线等)和GPU众核加速卡的部署;软件部署包括对深度学***台的部署。
下面给出具体的软、硬件部署,但是不限于下述部署方式:
硬件部署具体如下:
服务器硬件配置可参考表1,表1为针对服务器进行硬件配置对应的内容。
表1
网络设施硬件配置可参考表2,表2为针对网络设施进行硬件配置对应的内容。
硬件类别 | 型号和规格信息 |
交换机 | Spectrum-2 Ethernet Switch |
网卡 | ConnectX-6 Dx RDMA NIC |
线缆 | Direct Attached Cables |
拓扑 | 二层无阻塞Spine Leaf Trust L3 |
表2
GPU众核加速卡配置可参考表3,表3为针对GPU众核加速卡配置对应的内容。
硬件信息 | 型号和规格信息 |
显卡型号 | Tesla V100S-PCIE-32GB |
BIOS版本 | 88.00.98.00.01 |
软件授权 | GRID |
是否虚拟化 | 未虚拟化 |
表3
软件部署具体如下:
选用TensorFlow作为分布式AI模型训练框架软件。TensorFlow是深度学习领域最广泛使用的框架之一,由Google领导的开源社区提供了业界最好的应用支持,并持续推出、更新最先进的CNN、NLP等深度神经网络模型到社区。
选用Uber Horovod作为AI应用测试的分布式通信库。由于Horovod的各发行版可以良好支持TensorFlow、PyTorch、Keras和MXNet等多种分布式训练框架软件,且原生支持RDMA技术,可以极大地提升训练集群的通信效率。
针对深度学习模型训练软件框架部署内容参见表4,表4为深度学习模型训练软件框架部署内容。
软件类别 | 版本和配置信息 |
AI框架软件 | TensorFlow-GPU 2.1.0+Python 3.6 |
GPU驱动 | Driver 440.64.00 CUDA driver 10.1 |
CUDA软件库 | CUDA 10.1 |
深度学习加速库 | cuDNN 7.6 |
分布式通信库 | Uber Horovod |
编译方法和参数 | Built by TensorFlow community |
表4
针对操作***软件部署内容参见表5,表5为操作***软件部署对应的内容。
表5
针对容器平台部署内容参见表6,表6为容器平台部署对应的内容。
软件类别 | 版本和配置信息 |
容器平台 | Docker CE 19.03.8 |
容器编排软件 | Kubernetes+DeepOps+NGC |
表6
接下来详细说明网络拓扑配置对应的内容。
网络拓扑部署配置主要是将上述软件及硬件进行有机整合,形成可以运行AI业务的无损网络环境,并且测试无损网络运行AI业务时的各方面性能。
配置的内容包括:网络拓扑和物理连线、服务器基础环境配置、交换机配置、RDMA网卡QoS配置,以及AI应用软件。
服务器具有两种角色,一种是管理节点,即管理节点服务器,一种是计算节点,即计算节点服务器:
整个测试无损网络AI业务的网络拓扑由一个管理节点和多个计算节点构成,管理节点将测试数据分发给计算节点,各计算节点利用分发到本节点的数据共同进行训练,如卷积神经网络,得到适合的训练模型,模型确定后再来识别新的数据,并且得到数据的训练性能,也即每秒识别的图片数,或每秒识别语句的条数。
管理节点由服务器及运行在服务器上的软件构成,即由服务器硬件及运行在其上的虚拟机操作***和管理软件构成,管理节点上的软件包括Docker engine和KubernetesMaster Components构成,其中Docker engine是用来运行和创建容器的核心软件,是一种轻量级虚拟化技术。Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理,Kubernetes可以将节点分为管理节点和工作节点,管理节点和工作节点安装有不同的组件,管理节点向工作节点分派任务。
管理节点由服务器硬件、服务器虚拟机操作***主机、软件容器及容器管理软件共同构成。
针对管理节点的软硬件配置,具体可以为为:Kubernetes Master Components、Docker engine、Host OS(虚拟机操作***)、服务器硬件。
服务器计算节点软硬件配置具体为:TensorFlow、Kubernetes ClientComponents、Docker engine、Host OS(虚拟机操作***)、服务器硬件。
在多台服务器并行开展AI训练的过程中,各个计算节点之间会相互通信,计算节点与管理节点之间也会进行通信,节点间通信过程可能会利用不同的数据传输协议。在无损网络基础上,本申请实施例中可以基于下述三种协议进行数据传输并测试。
第一种:基于传输控制协议(Transmission Control Protocol,TCP)的数据传输。
基于CPU基础上的通信实现较为简单,进程之间主要通过TCP协议进行通信,但是这种通信数据传输和交换速度较慢。
第二种:基于RDMA的数据传输。
远程直接数据存取(Remote Direct Memory Access,RDMA)技术在一定程度上解决了网络传输过程中服务器端的数据处理延迟问题,在RDMA技术支持下,数据传输不需要CPU参与,数据资料可以从服务器存储区传输到其他服务器的存储区,网络传输速度提升。
第三种:基于GPU直接远程存取(GPU Direct RDMA,GDR)的数据传输。
GDR实现了服务器GPU之间的远程数据存取,没有GDR时,每当当GPU需要跨服务器通信,一个节点的GPU必须从其GPU显存复制数据到***内存,之后这些数据通过网络被发送到另一个服务器节点的***内存,最后从第二个节点的***内存复制数据到接收端GPU的显存。在使用GDR之后,一个服务器节点上的GPU可以直接将数据从其GPU显存发送到另一台服务器节点上的GPU显存,而不需要经过两个节点上的***内存,从而显著降低了GPU到GPU的通信延迟。
针对交换机的配置具体如下:
交换机无损网络可以采用如下命令进行配置:
roce lossless。
无损网络检视可以采用如下命令进行检视:
show roce。
针对RDMA网卡Qos配置具体如下:
配置端到端无损网络,需要将RDMA网卡上RoCE流量的Priority配置成和交换机无损配置一致,在交换机无损网络检视环节可以得到交换机RoCE流量的PFC Proority的值,假设该值为a。
RDMA网卡配置完成后,需要对主机网卡进行相应配置,配置方式如下:
配置网卡端口使用三层报文的DSCP(Differentiated Services Code Point)标记RDMA流量;
选择RC queue pair的DSCP字段,使RDMA流量可以通过DSCP to Priority映射到PFC Priority a,这里选用DSCP 26;
选择RC queue pair的ECN使能字段,使能RDMA流量的拥塞通知,这里选用ECN标记位配置为0x10;
通过将ToS106写入traffic class configfs,配置RC queue pair的ToS为106,完成对DSCP和ECN使能的配置;
通过cma_roce_tos,配置RDMA-CM queue pair的ToS为106,完成对DSCP和ECN使能的配置;
通过sysctl,配置使能普通TCP流量的ECN拥塞通知;
在网卡PFC Priority a上使能PFC。
至此完成无损网络AI业务测试平台的构建。
下面结合附图,详细说明本申请实施例中基于人工智能应用的无损网络性能测试过程。
在进行测试之前,可以编写测试用例,用于指示无损网络AI平台要执行的AI任务;测试者可以根据需要选择相应的数据集开展AI训练和预测。一个完整的AI深度学习应用和测试任务需要大量的用于输入到深度神经网络进行训练的训练数据,和测试神经网络识别、预测精度的测试数据。
用于AI训练的高质量数据集可以在主流的深度学习社区和网站下载,ImageNet和MNLI分别是其中比较有代表性的图像数据集和自然语言处理数据集,申请实施例中不限制货物数据的方式。
在具体训练过程中,可以利用TensorFlow来构建相应的卷积神经网络模型,常见的卷积神经网络训练模型主要包括以下几种:
AlexNet、Inception3/Inception4、Resnet50/Resnet101/Resnet152、VGG11/VGG16/VGG19等。
参见图3,图3为本申请实施例中基于人工智能应用的无损网络性能测试流程示意图。具体步骤为:
步骤301,服务器作为管理节点将待训练数据包分发给多个计算节点。
管理节点部署好待训练数据包,待训练数据包可以为图像数据包,和/或语句数据包。
按照预设规则,将待训练数据报划分为M份(M份数据包的数据量可以相同,也可以不同,由设置的规则确定,本申请实施例对此不进行限制),M为计算节点的个数;并分发给多个计算节点。
管理节点通过Kubernetes向各个计算节点分发待训练的数据包。
步骤302,服务器作为计算节点与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;并在训练结束后将训练结果反馈给所述管理节点。
计算节点上安装有TensorFlow分布式AI训练框架软件,该软件能够让各个计算节点采用同一训练模型进行AI训练,训练过程中可选用的神经网络训练模型包括AlexNet、Inception3/Inception4、Resnet50/Resnet101/Resnet152、VGG11/VGG16/VGG19。
在多节点并行开展AI训练的过程中,各个计算节点在对一组图片或语句进行训练的过程中会相互通信。
在具体实现时,可以针对计算节点署监控工具,以获取基于无损网络进行AI训练时的丢包率、时延和平均带宽。
在具体实现时,还可以从交换机控制界面获取基于无损网络进行AI训练时的丢包率、时延和平均带宽。
步骤303,服务器作为管理节点确定所述训练结果是否满足预设条件,如果是,执行步骤305;否则,执行步骤304。
这里的预设条件可以为训练次数大于预设次数值;也可以为训练结果符合预期要求,并不对此进行限制,可以根据实际测试场景进行设置。
步骤304,根据所述训练结果更新所述计算节点上的训练模型的参数,并将待测数据包重新分发给所述多个计算节点;执行步骤302。
本申请实施例中对训练模型的参数更新基于训练结果依据经验进行,本申请实施例中对此不进行限制。
在将待测数据包重新分发给多个计算节点时,分发给每个计算节点的数据包与上一次分发的数量可以相同,也可以不同,根据训练结果来确定是否重新划分分发给计算节点的数据包。
步骤305,计算网络训练性能值和加速比,并获取无损网络进行AI训练时的丢包率、时延和平均带宽。
网络训练性能值针对图像数据包为每秒训练图像的张数,针对语句数据包为每秒训练语句的条数。
每秒训练图像的张数为N次训练的图像总数与完成N次训练所用时间的比值;
每秒训练语句的条数为N次训练的语句总条数与完成N次训练所用时间的比值。
这里的N为管理节点向计算节点分发待训练数据包的次数。
加速比是指在执行一组AI训练任务时,在顺序执行的***和并行执行***中运行消耗的时间的比率,用来衡量并行***或程序并行化的性能和效果。
所述并行执行是指一个训练任务被分配给多个计算节点分布式并行训练,串行执行是指一个训练任务由一个计算节点顺序开展训练。在计算某个训练任务加速比时可以先在一个计算节点上执行一次顺序训练,记录时间,并将该时间值比上多节点并行训练的时间值。例如在执行一次图片训练任务时,多节点并行训练时间为a,单节点顺序执行时间为b,加速比即为b/a。
其中的丢包率、时延和平均带宽从交换机或服务器监控工具中获取。
本申请实施例中可以基于三种传输协议,以及不同数量服务器等进行网络性能测试。
如:测试4台服务器在无损网络环境下,通过TCP协议通信时,开展图像AI训练时的丢包率、平均带宽、网络训练的训练性能和加速比;
测试4台服务器在非无损网络环境下,通过TCP协议通信时,开展图像AI训练时的丢包率、平均带宽、网络训练的训练性能和加速比;
通过在无损网络和有损网络前提下的上述测试,可以判断在TCP协议下,无损网络开展AI训练较非无损网络开展AI训练时的网络性能差别。
测试在RDMA传输协议下,无损网络图像AI训练的丢包率、平均带宽、网络训练的训练性能和加速比;
测试在GDR传输协议下,无损网络图像AI训练的丢包率、平均带宽、网络训练的训练性能和加速比;
测试在TCP传输协议下,无损网络语句AI训练的丢包率、平均带宽、网络训练的训练性能和加速比。
上述给出一些测试实例,具体实现时可以根据实际需要灵活测试不同情况下无损和有损网络的性能。
基于同样的发明构思,本申请实施例中还提供一种基于人工智能应用的无损网络性能测试装置。通过部署网络拓扑构建无损网络AI业务测试平台,其中,所述网络拓扑包括:服务器和交换机;所述服务器之间通过交换机通信。参见图4,图4为本申请实施例中应用于上述技术的装置结构示意图。所述装置包括:发送单元401、接收单元402、训练单元403、确定单元404、计算单元405和获取单元406;
发送单元401,用于所在装置作为管理节点时,将待训练数据包分发给多个作为计算节点的服务器;所在装置作为计算节点时,将训练单元403的训练结果反馈给作为管理节点的服务器;
接收单元402,用于所在装置作为计算节点时,接收所述作为管理节点的服务器分发的待训练数据包;所在装置作为管理节点时,接收计算节点反馈的训练结果;
训练单元403,用于所在装置为计算节点时,与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;
确定单元404,用于所在装置作为管理节点,当接收单元402接收到计算节点反馈的训练结果时,确定所述训练结果是否满足预设条件,如果否,根据所述训练结果更新所述计算节点上的训练模型的参数,并触发发送单元401将待测数据包重新分发给所述多个计算节点继续进行训练,直到反馈的训练结果满足预设条件;
计算单元405,用于所述装置作为管理节点,当确定单元404确定计算节点反馈的训练结果满足预设条件时,计算网络训练性能值和加速比;
获取单元406,用于所述装置作为管理节点,当确定单元404确定计算节点反馈的训练结果满足预设条件时,获取无损网络进行AI训练时的丢包率、时延和平均带宽。
优选地,所述网络拓扑基于二层无阻塞Spine Leaf拓扑模型部署,将所述网络拓扑划分为叶层和脊层,叶层和脊层,叶层和脊层网络中分别分布着作为叶交换机和脊交换机的交换机,服务器与作为叶交换机的交换机的相连。
优选地,对所述网络拓扑中的服务器和交换机进行硬件部署包括:
对服务器、网络设施和显示核心GPU众核加速卡进行部署;其中,所述网络设施包括:交换机和物理连线;
对所述网络拓扑中的服务器和交换机进行软件部署包括:
对作为计算节点的服务器进行深度学***台部署;
对作为管理节点的服务器和交换机进行操作***及容器平台部署。
优选地,对所述网络拓扑中的服务器和交换机进行配置包括:
网络拓扑和物理连线、服务器基础环境配置、交换机配置、RDMA网卡QoS配置,以及AI应用软件。
优选地,
在作为计算节点的服务器上安装TensorFlow分布式AI训练框架软件,使各计算节点采用相同的训练模型进行AI训练。
优选地,
发送单元401,具体用于通过Kubernetes将待训练数据包分发给多个作为计算节点的服务器。
优选地,
针对作为计算节点的服务器部署监控工具;
所述获取单元,进一步用于从所述监控工具或交换机控制界面查询获取各个计算节点在进行AI训练时的丢包率、时延和平均带宽。
优选地,所述服务器之间,以及计算节点之间通过交换机通信使用的协议为:
传输控制协议TCP、远程直接数据存取RDMA,或图形处理器远程直接数据存取GDR。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种基于人工智能应用的无损网络性能测试方法,其特征在于,所述方法包括:
通过部署网络拓扑构建无损网络人工智能AI业务测试平台,其中,所述网络拓扑包括:服务器和交换机;所述服务器之间通过交换机通信;
所述服务器作为管理节点将待训练数据包分发给多个作为计算节点的服务器;
所述服务器作为计算节点与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;在训练结束后将训练结果反馈给所述管理节点;
所述服务器作为管理节点确定所述训练结果是否满足预设条件,如果否,根据所述训练结果更新所述计算节点上的训练模型的参数,并将待测数据包重新分发给所述多个计算节点继续进行训练,直到反馈的训练结果满足预设条件;计算网络训练性能值和加速比,并获取无损网络进行AI训练时的丢包率、时延和平均带宽;
其中,所述预设条件为训练次数大于预设次数值。
2.根据权利要求1所述的方法,其特征在于,所述网络拓扑基于二层无阻塞Spine Leaf拓扑模型部署,将所述网络拓扑划分为叶层和脊层,叶层和脊层网络中分别分布着作为叶交换机和脊交换机的交换机,服务器与作为叶交换机的交换机的相连。
3.根据权利要求2所述的方法,其特征在于,对所述网络拓扑中的服务器和交换机进行硬件部署包括:
对服务器、网络设施和显示核心GPU众核加速卡进行部署;其中,所述网络设施包括:交换机和物理连线;
对所述网络拓扑中的服务器和交换机进行软件部署包括:
对作为计算节点的服务器进行深度学***台部署;
对作为管理节点的服务器和交换机进行操作***及容器平台部署。
4.根据权利要求2所述的方法,其特征在于,对所述网络拓扑中的服务器和交换机进行配置包括:
网络拓扑和物理连线、服务器基础环境配置、交换机配置、RDMA网卡QoS配置,以及AI应用软件。
5.根据权利要求3所述的方法,其特征在于,所述方法进一步包括:
在作为计算节点的服务器上安装TensorFlow分布式AI训练框架软件,使各计算节点采用相同的训练模型进行AI训练。
6.根据权利要求1所述的方法,其特征在于,所述服务器作为管理节点将待训练数据包分发给多个作为计算节点的服务器时,通过Kubernetes将待训练数据包分发给多个作为计算节点的服务器。
7.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
部署监控工具,用于监控无损网络进行AI训练时的丢包率、时延和平均带宽;
所述获取无损网络进行AI训练时的丢包率、时延和平均带宽,包括:
从所述监控工具或交换机控制界面查询获取各个计算节点在进行AI训练时的丢包率、时延和平均带宽。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述服务器之间,以及计算节点之间通过交换机通信使用的协议为:
传输控制协议TCP、远程直接数据存取RDMA,或图形处理器远程直接数据存取GDR。
9.一种基于人工智能应用的无损网络性能测试装置,其特征在于,通过部署网络拓扑构建无损网络AI业务测试平台,其中,所述网络拓扑包括:服务器和交换机;所述服务器之间通过交换机通信;所述装置包括:发送单元、接收单元、训练单元、确定单元、计算单元和获取单元;
所述发送单元,用于所在装置作为管理节点时,将待训练数据包分发给多个作为计算节点的服务器;所在装置作为计算节点时,将所述训练单元的训练结果反馈给作为管理节点的服务器;
所述接收单元,用于所在装置作为计算节点时,接收所述作为管理节点的服务器分发的待训练数据包;所在装置作为管理节点时,接收计算节点反馈的训练结果;
所述训练单元,用于所在装置为计算节点时,与其他计算节点使用相同的训练模型对接收到的待训练数据包进行AI训练;
所述确定单元,用于所在装置作为管理节点,当所述接收单元接收到计算节点反馈的训练结果时,确定所述训练结果是否满足预设条件,如果否,根据所述训练结果更新所述计算节点上的训练模型的参数,并触发所述发送单元将待测数据包重新分发给所述多个计算节点继续进行训练,直到反馈的训练结果满足预设条件;其中,所述预设条件为训练次数大于预设次数值;
所述计算单元,用于所述装置作为管理节点,当所述确定单元确定计算节点反馈的训练结果满足预设条件时,计算网络训练性能值和加速比;
所述获取单元,用于所述装置作为管理节点,当所述确定单元确定计算节点反馈的训练结果满足预设条件时,获取无损网络进行AI训练时的丢包率、时延和平均带宽。
10.根据权利要求9所述的装置,其特征在于,所述网络拓扑基于二层无阻塞SpineLeaf拓扑模型部署,将所述网络拓扑划分为叶层和脊层,叶层和脊层,叶层和脊层网络中分别分布着作为叶交换机和脊交换机的交换机,服务器与作为叶交换机的交换机的相连。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110060368.7A CN112866059B (zh) | 2021-01-18 | 2021-01-18 | 一种基于人工智能应用的无损网络性能测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110060368.7A CN112866059B (zh) | 2021-01-18 | 2021-01-18 | 一种基于人工智能应用的无损网络性能测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112866059A CN112866059A (zh) | 2021-05-28 |
CN112866059B true CN112866059B (zh) | 2022-07-15 |
Family
ID=76006073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110060368.7A Active CN112866059B (zh) | 2021-01-18 | 2021-01-18 | 一种基于人工智能应用的无损网络性能测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112866059B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113792875B (zh) * | 2021-09-09 | 2024-07-23 | 中科曙光南京研究院有限公司 | 一种分布式通信库的性能测试方法、装置、设备及介质 |
CN114422393B (zh) * | 2021-12-28 | 2023-06-13 | 中国信息通信研究院 | 用于确定无损网络性能的方法及装置、电子设备、存储介质 |
CN114338492B (zh) * | 2021-12-31 | 2023-08-25 | 苏州浪潮智能科技有限公司 | 虚拟网络性能的测试方法、装置、计算机设备及介质 |
CN114707654B (zh) * | 2022-06-06 | 2022-08-23 | 浙江大学 | 基于人工智能框架的算法训练推理性能可视化方法及装置 |
CN115250253B (zh) * | 2022-06-22 | 2024-02-27 | 西南交通大学 | 带宽感知的归约处理方法以及ai模型的训练方法 |
CN117395186A (zh) * | 2022-06-29 | 2024-01-12 | 华为云计算技术有限公司 | 一种分布式训练方法、***及装置 |
CN117076937B (zh) * | 2023-10-16 | 2024-02-09 | 苏州元脑智能科技有限公司 | 分布式***的节点训练方法、装置和分布式*** |
CN117579559B (zh) * | 2024-01-17 | 2024-04-23 | 企商在线(北京)数据技术股份有限公司 | 一种基于AI的RoCEv2拥塞控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103929341A (zh) * | 2014-04-30 | 2014-07-16 | 北京瑞汛世纪科技有限公司 | 网络性能的测量方法、服务器、网络探针和*** |
CN111478821A (zh) * | 2019-01-24 | 2020-07-31 | 中国信息通信研究院 | 一种网络性能测试方法和*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8705572B2 (en) * | 2011-05-09 | 2014-04-22 | Emulex Corporation | RoCE packet sequence acceleration |
-
2021
- 2021-01-18 CN CN202110060368.7A patent/CN112866059B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103929341A (zh) * | 2014-04-30 | 2014-07-16 | 北京瑞汛世纪科技有限公司 | 网络性能的测量方法、服务器、网络探针和*** |
CN111478821A (zh) * | 2019-01-24 | 2020-07-31 | 中国信息通信研究院 | 一种网络性能测试方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN112866059A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112866059B (zh) | 一种基于人工智能应用的无损网络性能测试方法和装置 | |
McChesney et al. | Defog: fog computing benchmarks | |
CN109426549A (zh) | 针对虚拟环境的加速器互连分配 | |
US20180307972A1 (en) | Local multicast in single-host multi-gpu machine for distributed deep learning systems | |
JP2021505993A (ja) | 深層学習アプリケーションのための堅牢な勾配重み圧縮方式 | |
CN107710238A (zh) | 具有堆栈存储器的硬件加速器上的深度神经网络处理 | |
CN109768940A (zh) | 多业务sdn网络的流量分配方法及装置 | |
CN108667657B (zh) | 一种面向sdn的基于局部特征信息的虚拟网络映射方法 | |
CN109076029A (zh) | 用于网络i/o访问的技术 | |
CN108564164A (zh) | 一种基于spark平台的并行化深度学习方法 | |
CN110413595A (zh) | 一种应用于分布式数据库的数据迁移方法和相关装置 | |
Katevenis et al. | Next generation of exascale-class systems: Exanest project and the status of its interconnect and storage development | |
US20220043731A1 (en) | Performance analysis | |
CN109117252A (zh) | 基于容器的任务处理的方法、***及容器集群管理*** | |
CN112073237B (zh) | 一种云边架构中大规模目标网络构建方法 | |
CN110635943B (zh) | 基于Spark计算框架的网络传输过程的网络流量仿真*** | |
Filelis-Papadopoulos et al. | Towards simulation and optimization of cache placement on large virtual content distribution networks | |
Yang et al. | EdgeTB: A hybrid testbed for distributed machine learning at the edge with high fidelity | |
JPWO2020174404A5 (zh) | ||
CN106844024B (zh) | 一种自学习运行时间预测模型的gpu/cpu调度方法及*** | |
DE112023000088T5 (de) | Selektive kommunikationsschnittstellen für programmierbare teile | |
CN115292044A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN110928683B (zh) | 基于两类密集型虚拟机的边缘计算资源分配方法 | |
CN113657435A (zh) | 面向异构边缘计算平台的去中心化训练方法 | |
Zhao et al. | Distance-aware virtual cluster performance optimization: A hadoop case study |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |