当前位置: 首页 > news >正文

昇腾多卡通信教程【配置网络检测对象IP】

无法通信会出现的错误如下

一、网络健康状态报错

命令原型

hccn_tool [-i %d] -netdetect -s [address %s]

命令功能
本功能支持用户执行命令获取网络健康状态(本端与所配置的检测IP之间的连通状态),用户可指定上报的状态信息名称。

状态信息:

0:Success;1:Socket fail;2:Receive timeout;3:Unreachable;4:Time exceeded;5:Fault;6:Init;7:Thread error;8:Detect ip set;其它:Unknown。

参数说明

参数说明
-i指定设备ID。取值范围:0~7。
-net_health指定网络健康状态属性。
-g获取属性。

使用样例

hccn_tool -i 1 -net_health -g

报错

net health status: Init

二、运行hccl_tools.py报错

根据RANK_TABLE_FILE准备----单机8卡
运行mindformers/tools/hccl_tools.py,生成RANK_TABLE_FILE文件

# 运行如下命令,生成当前机器的RANK_TABLE_FILE的json文件
python ./mindformers/tools/hccl_tools.py --device_num "[0,8)"

报错

start /home/HwHiAiUser/mindformers/./mindformers/tools/hccl_tools.py
visible_devices:['0', '1', '2', '3', '4', '5', '6', '7']
server_id:127.0.0.1
device_num_list: [0, 1, 2, 3, 4, 5, 6, 7]
Command execute failed!
Failed to call hccn_tool, try to read /etc/hccn.conf instead
Traceback (most recent call last):File "/home/HwHiAiUser/mindformers/./mindformers/tools/hccl_tools.py", line 163, in <module>main()File "/home/HwHiAiUser/mindformers/./mindformers/tools/hccl_tools.py", line 137, in maindevice_ip = device_ips[device_id]
KeyError: '0'

三、多卡推理报错

多卡推理baichuan2-13b,这个时候已经解决了上面的报错,但是这时多卡依然无法通信,报错EI0004,官网论坛以及昇思文档还有gitee都没有解决方案
报错

[WARNING] Distributed Communication has not been inited. Use default RANK_SIZE: 1
[WARNING] Distributed Communication has not been inited. Use default RANK_ID: 0
Traceback (most recent call last):File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/mindformers/core/context/build_context.py", line 95, in init_contextinit()File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/mindspore/communication/management.py", line 171, in initinit_hccl()
RuntimeError: Ascend collective communication initialization failed.----------------------------------------------------
- Ascend Error Message:
----------------------------------------------------
EI0004: The ranktable or rank is invalid,Reason:[The ranktable config devId is inconsistent with the local devId.]. Please check the configured ranktable. [{"server_count":"1","server_list":[{"device":[{"device_id":"0","device_ip":"192.168.2.60","rank_id":"0"},{"device_id":"1","device_ip":"192.168.3.60","rank_id":"1"},{"device_id":"2","device_ip":"192.168.4.60","rank_id":"2"},{"device_id":"3","device_ip":"192.168.5.60","rank_id":"3"},{"device_id":"4","device_ip":"192.168.6.60","rank_id":"4"},{"device_id":"5","device_ip":"192.168.7.60","rank_id":"5"},{"device_id":"6","device_ip":"192.168.8.60","rank_id":"6"},{"device_id":"7","device_ip":"192.168.9.60","rank_id":"7"}],"host_nic_ip":"reserve","server_id":"127.0.0.1"}],"status":"completed","version":"1.0"}]Solution: Try again with a valid cluster configuration in the ranktable file. Ensure that the configuration matches the operating environment.(Please search "Ascend Error Message" at https://www.mindspore.cn for error code description)----------------------------------------------------
- Framework Error Message: (For framework developers)
----------------------------------------------------
Init hccl graph adapter failed.
----------------------------------------------------
- C++ Call Stack: (For framework developers)
----------------------------------------------------
mindspore/ccsrc/plugin/device/ascend/hal/hardware/ascend_collective_comm_lib.cc:129 Initialize
mindspore/ccsrc/plugin/device/ascend/hal/hccl_adapter/hccl_adapter.cc:452 InitKernelInfoStoreDuring handling of the above exception, another exception occurred:Traceback (most recent call last):File "/home/HwHiAiUser/mindformers/research/baichuan2/run_baichuan2_pipeline.py", line 35, in <module>build_context(baichuan2_config)File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/mindformers/core/context/build_context.py", line 43, in build_contextlocal_rank, device_num = init_context(use_parallel=config.use_parallel,File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/mindformers/core/context/build_context.py", line 97, in init_contextraise RuntimeError("Notice: if you are trying to run with a single device, please set "
RuntimeError: Notice: if you are trying to run with a single device, please set use_parallel=False. If not, please check the error message above.

解决方案

第一步:编译HCCL

参考:昇腾社区—CANN社区版—开发工具—HCCL性能测试工具—工具编译

第二步:配置网卡

1、RoCE网卡IP地址和子网掩码

命令原型

hccn_tool [-i %d] -ip -s [address %s] [netmask %s]

命令功能
配置RoCE网卡的IP地址、子网掩码。

参数说明

参数说明
-i指定设备ID。取值范围:0~7。
-ip指定IP属性。
-s设置属性。
addressIP地址。
netmask子网掩码。

约束说明
该命令仅支持在物理机root用户下运行。

使用样例

hccn_tool -i 0 -ip -s address 192.168.10.61 netmask 255.255.255.0
hccn_tool -i 1 -ip -s address 192.168.10.62 netmask 255.255.255.0
hccn_tool -i 2 -ip -s address 192.168.10.63 netmask 255.255.255.0
hccn_tool -i 3 -ip -s address 192.168.10.64 netmask 255.255.255.0
hccn_tool -i 4 -ip -s address 192.168.10.65 netmask 255.255.255.0
hccn_tool -i 5 -ip -s address 192.168.10.66 netmask 255.255.255.0
hccn_tool -i 6 -ip -s address 192.168.10.67 netmask 255.255.255.0
hccn_tool -i 7 -ip -s address 192.168.10.68 netmask 255.255.255.0

注意事项
我的服务器IP是192.168.10.60,所以设置显卡ip需要以192.168.10为起始
针对AI Server上每个Device侧OS管理8块昇腾AI处理器,需要为每个OS上的8块网卡配置不同的IP。
首次配置IP时会出现15秒后link状态变为down,然后恢复up状态的情况。
192.168.1.X、192.168.2.192、192.168.2.196、192.168.3.193、192.168.3.197、192.168.4.194、192.168.4.198、192.168.5.195和192.168.5.199用于板内网络通信使用,不支持配置。

2、配置路由

hccn_tool -i 0 -gateway -s gateway 192.168.10.60
hccn_tool -i 1 -gateway -s gateway 192.168.10.60
hccn_tool -i 2 -gateway -s gateway 192.168.10.60
hccn_tool -i 3 -gateway -s gateway 192.168.10.60
hccn_tool -i 4 -gateway -s gateway 192.168.10.60
hccn_tool -i 5 -gateway -s gateway 192.168.10.60
hccn_tool -i 6 -gateway -s gateway 192.168.10.60
hccn_tool -i 7 -gateway -s gateway 192.168.10.60

3、配置NPU网口检测IP地址(网络检测对象IP)

命令原型

hccn_tool [-i %d] -netdetect -s [address %s]

命令功能
配置网络检测对象IP。该功能主要用于检测网络状态,当多台服务器进行分布式训练时,可将检测对象IP配置为网段内的网关地址,服务器会定时检测和网关地址通信是否正常,从而实现检测服务器参数面网络状态是否正常的效果。该功能需配合获取网络健康状态使用。

参数说明

参数说明
-i指定设备ID。取值范围:0~7。
-netdetect指定网络检测对象IP属性。
-s设置属性。
addressIP地址。

约束说明
该命令仅支持在物理机的root用户下运行。

使用样例

hccn_tool -i 0 -netdetect -s address 192.168.10.60
hccn_tool -i 1 -netdetect -s address 192.168.10.60
hccn_tool -i 2 -netdetect -s address 192.168.10.60
hccn_tool -i 3 -netdetect -s address 192.168.10.60
hccn_tool -i 4 -netdetect -s address 192.168.10.60
hccn_tool -i 5 -netdetect -s address 192.168.10.60
hccn_tool -i 6 -netdetect -s address 192.168.10.60
hccn_tool -i 7 -netdetect -s address 192.168.10.60

设置完成后随意检查一块显卡的健康状态

hccn_tool -i 7 -net_health -g

返回Success即为成功,这样就解决了bug-1和bug-3

net health status: Success

以上操作参考Ascend Training Solution 23.0.RC3 组网指南 01

设置完成后运行hccl_tools.py

start /home/HwHiAiUser/mindformers/./mindformers/tools/hccl_tools.py
visible_devices:['0', '1', '2', '3', '4', '5', '6', '7']
server_id:127.0.0.1
device_num_list: [0, 1, 2, 3, 4, 5, 6, 7]
rank_id:0, device_id:0, device_ip:192.168.10.61
rank_id:1, device_id:1, device_ip:192.168.10.62
rank_id:2, device_id:2, device_ip:192.168.10.63
rank_id:3, device_id:3, device_ip:192.168.10.64
rank_id:4, device_id:4, device_ip:192.168.10.65
rank_id:5, device_id:5, device_ip:192.168.10.66
rank_id:6, device_id:6, device_ip:192.168.10.67
rank_id:7, device_id:7, device_ip:192.168.10.68
Completed: hccl file was save in : /home/HwHiAiUser/mindformers/hccl_8p_01234567_127.0.0.1.json

这样就算是成功了,bug-2就解决了

相关文章:

昇腾多卡通信教程【配置网络检测对象IP】

无法通信会出现的错误如下 一、网络健康状态报错 命令原型 hccn_tool [-i %d] -netdetect -s [address %s]命令功能 本功能支持用户执行命令获取网络健康状态&#xff08;本端与所配置的检测IP之间的连通状态&#xff09;&#xff0c;用户可指定上报的状态信息名称。 状态信…...

PKI 公钥基础设施,公钥私钥,信息摘要,数字签名,数字证书

PKI 公钥基础设施 https 基于 PKI 技术。PKI&#xff08;Public Key Infrastructure&#xff0c;公钥基础设施&#xff09;是一种安全体系结构&#xff0c;用于管理数字证书和密钥对&#xff0c;以确保安全的数据传输和身份验证。PKI 采用了公钥加密技术&#xff0c;其中每个实…...

企业Aspera替代方案有哪些推荐

随着企业数据量的不断增加&#xff0c;数据传输和共享成为了一个重要的问题。Aspera是一款高性能、低延迟的数据传输工具&#xff0c;但是它并不是万能的&#xff0c;随着数据量的不断增大&#xff0c;也有一些企业需要寻找Aspera的替代方案。本文将介绍三种常用的企业Aspera替…...

vue3 vuedraggable draggable element must have an item slot

vue3vite 看官网使用这种<template #item“{ element }”> <draggablev-model"myArray"start"onStart"end"onEnd":sort"false"item-key"id"draggable".item"handle".mover" ><template…...

如何缓解BOT攻击?分享灵活准确的防御之道

BOT流量在所有互联网流量中的占比过半&#xff0c;而且存在好坏之分。其中“好”的BOT&#xff0c;比如在互联网上搜索和查找内容的BOT&#xff0c;它们是我们不可或缺的帮手。恶意的BOT进行信息数据爬取、薅羊毛等攻击行为&#xff0c;正损害着企业和用户的利益。专业数据统计…...

了解JavaScript的执行环境及作用域

一、执行环境 执行环境定义了变量或函数有权访问的其他数据&#xff0c;决定了它们的各自行为。每个执行环境都有一个与之关联的变量对象&#xff0c;环境中定义的所有变量和函数都保存在这个对象中。虽然我们无法访问这个对象&#xff0c;但是解析器在处理数据时会在后台使用它…...

嵌套调用和链式访问

嵌套调用 嵌套调用就是函数之间的互相调用&#xff0c;每个函数就是⼀个乐高零件&#xff0c;正是因为多个乐高的零件互相无缝的配合才能搭建出精美的乐高玩具&#xff0c;也正是因为函数之间有效的互相调用&#xff0c;最后写出来了相对大型的程序。 假设我们计算某年…...

DBA技术栈(二):MySQL 存储引擎

2.1 MySQL存储引擎概述 上个业余的图&#xff1a; MyISAM 存储引擎是 MySQL 默认的存储引擎&#xff0c;也是目前 MySQL 使用最为广泛的存储引擎之一。他的前身就是我们在 MySQL 发展历程中所提到的 ISAM&#xff0c;是 ISAM 的升级版本。在 MySQL最开始发行的时候是 ISAM 存…...

java发送邮件到qq邮箱

自己的授权码自己记好 引入依赖 <dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><version>1.6.2</version> </dependency> <dependency><groupId>javax.mail</groupId>&…...

MySQL中的JSON数据类型计数及多张表COUNT的数据相加

1.使用场景&#xff1a;在MySQL中&#xff0c;JSON作为一种数据类型存储在表的列中。需计算键值对的数量。 2.方法&#xff1a;SELECT COUNT(chief>$.number) FROM t_projectapplication where id #{id};&#xff08;t_projectapplication&#xff1a;表&#xff1b;chief&…...

XDOJ78.机器人

标题 机器人 类别 综合 时间限制 1S 内存限制 256Kb 问题描述 机器人按照给定的指令在网格中移动&#xff0c;指令有以下四种&#xff1a; N 向北&#xff08;上&#xff09;移动 S 向南&#xff08;下&#xff09;移动 E 向东&#xff08;右&#xff09;移动 W 向西&…...

分布式系统架构设计之分布式事务的概述和面临的挑战

在当今大规模应用和服务的背景下&#xff0c;分布式系统的广泛应用已经成为了一种必然的主流趋势。然后&#xff0c;伴随着分布式系统的应用范围的增长&#xff0c;分布式事务处理成为了一个至关重要的关键话题。在传统的单体系统中&#xff0c;事务处理通常相对简单&#xff0…...

私有化部署你的甘特图协作工具

安装 首先去官网 https://zz-plan.com/deploy 下载对应的版本 arm是对应m1 m2 m3的mac amd是老的intel处理器 准备工作 安装mysql zz-plan需要依赖mysql 生成token 解压下载的压缩包 创建token./zz-plan -c 复制创建的token去获取授权码&#xff0c;点击获取免费授权码 …...

编程笔记 html5cssjs 011 HTML内连框架

编程笔记 html5&css&js 011 HTML内连框架 一、内连框架&#xff08;一&#xff09;意义&#xff08;二&#xff09;属性 二、操作注意 接下来要看一下网页内的划分。通过内连框架在当前页面嵌入一个特定内容&#xff0c;是一种特定需要。 一、内连框架 HTML 内联框架元…...

Stable Diffusion 系列教程 - 5 ControlNet

ControlNet和LORA的定位都是对大模型做微调的额外网络。作为入门SD的最后一块拼图是必须要去了解和开发的。为什么ControlNet的影响力如此的大&#xff1f;在它之前&#xff0c;基于扩散模型的AIGC是非常难以控制的&#xff0c;扩散整张图像的过程充满了随机性。这种随机性并不…...

【导出与导入Virtualbox虚拟机和启动连接openGauss数据库】

【导出与导入Virtualbox虚拟机和启动连接openGauss数据库】 一、导出虚拟机二、导入虚拟机三、启动数据库四、使用Data Studio连接数据库 一、导出虚拟机 选择关机状态的虚拟机 -> 管理菜单 -> 导出虚拟电脑 点击完成后&#xff0c;需要等待一小段时间&#xff0c;如…...

“华为杯”杭州电子科技大学2023新生编程大赛---树

题目链接 Problem Description 给定一棵包含 n 个节点的带边权的树&#xff0c;树是一个无环的无向联通图。定义 xordist(u,v) 为节点 u 到 v 的简单路径上所有边权值的异或和。 有 q 次询问&#xff0c;每次给出 l r x&#xff0c;求 ∑rilxordist(i,x) 的值。 Input 测试…...

使用pnnx将Torch模型转换为ncnn

1. 引言 以往我们将Torch模型转换为ncnn模型&#xff0c;通常需经过Torch–>onnx&#xff0c;onnx–>ncnn两个过程。但经常会出现某些算子不支持的问题。 ncnn作者针对该问题&#xff0c;直接开发一个Torch直接转换ncnn模型的工具 (PNNX)&#xff0c;以下为相关介绍及使…...

linux卸载小皮面板phpstudy教程

千万不要直接删文件夹&#xff01; 千万不要直接删文件夹&#xff01; 千万不要直接删文件夹&#xff01; 我就是按照网上搜索的教程&#xff0c;直接删了&#xff0c;然后 系统就不停的崩溃 生成这种文件&#xff1a; -rw------- 1 root root 223M Dec 28 22:36…...

【萤火虫系列教程】1/5-Adobe Firefly 注册账号

001-Adobe Firefly 注册账号 AI时代如火如荼&#xff0c;Adobe也不甘落后&#xff0c;于今年3月份发布AI创意生成工具Firefly&#xff08;中文翻译&#xff1a;萤火虫&#xff09; Adobe Firefly简介 Adobe Firefly的官方介绍为&#xff1a;Firefly是Adobe产品中新的创意生成…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

Linux-07 ubuntu 的 chrome 启动不了

文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了&#xff0c;报错如下四、启动不了&#xff0c;解决如下 总结 问题原因 在应用中可以看到chrome&#xff0c;但是打不开(说明&#xff1a;原来的ubuntu系统出问题了&#xff0c;这个是备用的硬盘&a…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...