超节点P2P带宽测试
测试项功能
超节点P2P带宽测试主要用于测试节点之间的网络传输速率和时延。
仅6.0.RC2.1及以上版本支持此功能。
使用约束
- 当前测试项功能仅支持root用户在超节点上使用。
- 为了测试最优带宽性能,测试时确保待测节点或Device不受其他因素干扰。
- 不支持3个及以上的超节点同时执行测试,否则可能导致超节点P2P带宽测试失败。
- 使用前应确保执行超节点P2P带宽测试的2个节点为同一NPU类型。。
- 为了避免频繁输出日志影响测试结果,测试前确认Host和Device的日志级别设置为ERROR,确认及设置方法如下:
- 确认日志级别:
- Host侧:通过执行echo $GLOBAL_LOG_LEVEL命令查询,如果查询结果为非法值或者空,表示日志级别为缺省级别ERROR,对应数值3。
- Device侧:请参考《CANN 日志参考》“其他操作">"msnpureport工具使用”章节,查看全局日志级别、模块日志级别和是否开启Event日志。
- 如果日志级别不为ERROR,请参考《CANN 日志参考》中“其他操作">“设置日志级别”章节,设置Host和Device侧的日志级别。
- 确认日志级别:
测试前准备
在进行超节点P2P带宽测试前,请确保已在待测节点上进行SSH密钥认证(免密登录)。
ascend-dmi支持通过SSH密钥认证(免密登录)和SSH密码认证两种方式远程连接其他服务器。详细配置方法请参考:配置SSH密钥认证。
测试流程
超节点间基于1520芯片进行通信,节点间需要进行scp通信来传递共享地址和进程ID,以在Device A、Device B上进行超节点P2P带宽测试为例。测试流程如下:
1. 已完成CANN、toolbox的安装,并配置环境变量;
2. Device A启动ascend-dmi,参数指定为超节点带宽测试,并指定Device B的IP地址;
3. Device B启动ascend-dmi,参数指定为超节点带宽测试,并指定Device A地址;
4. 打印测试结果。
- 在上述用流程中,Device A和Device B启动ascend-dmi工具进行超节点带宽测试时,时间间隔不能超过5s。
- 对方节点的ip地址必须有效,即当Device B上执行ascend-dmi --bw -t p2p --sp 0 --ip 命令,其ip必须为Device A的IP。同理在Device A上执行ascend-dmi --bw -t p2p --sp1 --ip 命令,其ip必须为Device B的IP。
测试项参数查询
用户可任选以下指令之一查看带宽测试命令的可用参数。
ascend-dmi --bw -h
ascend-dmi --bw --help
命令各参数解释如表1所示。
|
参数 |
说明 |
约束 |
是否必填 |
|---|---|---|---|
|
[-bw, --bw, --bandwidth] |
使用该参数测试芯片的带宽。支持-bw,但建议使用--bw或--bandwidth。 |
- |
是 |
|
[-t, --type] |
指测试数据流向的分类。 |
当前仅支持带宽类型为p2p的指定。 |
否 |
|
[-sp, --sp, --super-pod] |
指定超节点测试。 该参数取值为0或1,0表示优先测试单向带宽,默认值为0。 |
指定该参数必须同时指定--ip。 |
是 |
|
[-ip, --ip] |
用于指定超节点测试时对方节点的ip地址。 |
|
是 |
|
[-d, --device] |
指定待测节点的Device ID,默认值为0。 |
- |
否 |
|
[-s, --size] |
指传输数据大小并指定测试结果显示方式。
|
|
否 |
|
[-et, --et, --execute-times] |
指迭代次数,即内存拷贝次数。
|
执行超节点P2P带宽测试的2个节点指定的-et参数的数值大小必须相同。 |
否 |
|
[-fmt, --fmt, --format] |
指定输出格式,可以为normal或json。若未指定则默认为normal。 |
- |
否 |
|
[-q, --quiet] |
指定该参数时,将不再进行防呆提示,用户将默认允许该操作。 |
若不指定该参数,将进行防呆提示,用户需要输入Y或N(y或n)确认是否进行测试。 |
否 |
|
注: 临时文件保存目录为/var/log/ascend_check,临时文件名分别为flag、ipc、ipcBi、procInfo和procInfoBi。 |
|||
- ascend-dmi --bw后使用-t,-s等多个二级参数时,可任意指定这些参数的排列顺序,不影响命令结果输出。例如:ascend-dmi --bw -t h2d -d 0 --et 100和ascend-dmi --bw -t h2d --et 100 -d 0输出结果相同。
- 使用-s和-et参数指定的数据搬运量和数据拷贝的次数较小时,可能无法获取最佳性能,如需稳定测得最佳性能,建议-s指定为512M,-et指定为>10。
使用实例
- 以不指定超节点P2P带宽测试的Device ID为例,命令如下。(请将下文中的xx.xxx.xx替换为优先测试单向带宽的节点IP,请将下文中的yy.yyy.yy替换为对方节点的IP)
图1 超节点P2P带宽测试示例
优先测试单向带宽的节点上执行:
ascend-dmi --bw -t p2p --sp 0 --ip yy.yyy.yy对方节点上执行:
ascend-dmi --bw -t p2p --sp 1 --ip xx.xxx.xx - 以测试2个节点Device 1之间的带宽为例。
ascend-dmi --bw -t p2p --sp 0 --ip yy.yyy.yy d 1对方节点上执行
ascend-dmi --bw -t p2p --sp 1 --ip xx.xxx.xx d 1表2 显示界面参数介绍 参数
说明
Unidirectional Peer to Peer Test
单向P2P。
Bidirectional Peer to Peer Test
双向P2P。
Pod: x.x.x.x device: 0 to Pod: x.x.x.x device: 0
前一个Pod代表优先测试单向带宽的节点;x.x.x.x 为优先测试单向带宽的节点IP;device为优先测试单向带宽的Device ID。
后者为对方节点;对方节点IP;对方节点Device ID。
Size(Bytes)
传输数据大小,单位为字节。
Execute Times
迭代次数
Bandwidth(GB/s)
芯片的带宽,单位为GB。
Elapsed Time(us)
执行时长