How to Split HDR port to two HDR100 ports on Mellanox HDR Switch
This post walk-through the procedure to split HDR switch port to two HDR100 ports on Mellanox HDR Quantum switch (QM8700).
Note: Nothing is needed to be done on the hosts, it is only switch configuration.
References
- QM8700 Series - Mellanox Quantum™ HDR 200Gb/s InfiniBand Smart Switches
- DAC Split Cable (HDR-to-Dual HDR100 Y Split - Copper)
Notes:
- Make sure to use HDR split-cables connecting the servers to the switch
- In case you use regular HDR cable, only two lanes will be used to reach HDR100 speed, other 2 lanes will not be used.
Configuration
1. Connect to hosts with HDR-to-HDR100 Y cable to an HDR switch. Make sure to connect the HDR side to the switch.
2. Login to the switch and check the system profile. Split Ready should be yes
switch (config) # show system profile Profile : ib Number of SWIDs : 1 Adaptive Routing : yes Adaptive Routing Groups: 1792 Split Ready : yes IB Routing : no
Note that by default, Split Ready is no. To enable it, run the following command to change the system profile. It requires reboot.
switch (config) # system profile ib split-ready
This command will clear the switch configuration (besides the management IP), so it is recommended to save your current configuration, and apply again after reboot.
To save the configuration run:
switch (config) # configuration write to <filename>
3. After reboot, verify that the system profile was changed, and split the relevant ports using this command:
switch (config) # interface ib 1/10 module-type qsfp-split-2 force
4. Make sure that SM is enabled and check the port status, see that the split port 1/10 is now two ports 1/10/1 and 1/10/2 , see that the speed is 100Gb/s HDR and the width is 2X.
# show interfaces ib 1/10/1 IB1/10/1 state: Logical port state : Active Physical port state : LinkUp Current line rate : 100.0 Gbps Supported speeds : sdr, edr, hdr Speed : hdr Supported widths : 1X, 2X Width : 2X Max supported MTUs : 4096 MTU : 4096 VL capabilities : VL0 - VL7 Operational VLs : VL0 - VL3 Description : IB Subnet : infiniband-default Phy-profile : high-speed-ber Width reduction mode : Not supported Telemetry sampling : Disabled Telemetry threshold : Disabled Telemetry record : Disabled Telemetry threshold level : N/A bytes RX bytes : 186135451664 RX packets : 55767477 RX errors : 0 Symbol errors : 0 VL15 dropped packets : 0 TX bytes : 441369932 TX packets : 13916715 TX wait : 0 TX discarded packets : 0
5. On the Server you should use ibstatus and check the rate parameter.
In case the link is HDR100 you would see that rate is equal to 100 Gb/sec (2X HDR)
$ ibstatus mlx5_2 Infiniband device 'mlx5_2' port 1 status: default gid: fe80:0000:0000:0000:b859:9f03:0056:8100 base lid: 0xcf sm lid: 0x1 state: 4: ACTIVE phys state: 5: LinkUp rate: 100 Gb/sec (2X HDR) link_layer: InfiniBand
As a reference, in case the link is HDR you would see that rate is 200 Gb/sec (4X HDR)
$ ibstatus mlx5_2 Infiniband device 'mlx5_2' port 1 status: default gid: fe80:0000:0000:0000:b859:9f03:0056:8100 base lid: 0xcf sm lid: 0x1 state: 4: ACTIVE phys state: 5: LinkUp rate: 200 Gb/sec (4X HDR) link_layer: InfiniBand
6. Script example to change 40 switch ports from HDR to HDR100, need to make sure that the profile is set to split-ready as mentioned above. Change the <switch-name> and <switch-password> to yours.
#!/usr/bin/expect set timeout 20 #spawn "./addition.pl" spawn ssh admin@switch-name expect "Password:" { send "switch-password\r" } expect "> " { send "en\r" } expect "# " { send "conf term\r" puts "" for {set port 1} {$port<=40} {incr port} { send "interface ib 1/$port module-type qsfp-split-2 force \r" puts "PORT=$port is splitted." } send "configuration write \r" send "exit \r" send "exit \r" } interact
Un-Split HDR100 to HDR
1. To unsplit the port on the switch use the following command
switch (config) # interface ib 1/<port>/<1-2> module-type qsfp force
All trademarks are property of their respective owners. All information is provided “As-Is” without any kind of warranty. The HPC Advisory Council makes no representation to the accuracy and completeness of the information contained herein. HPC Advisory Council undertakes no duty and assumes no obligation to update or correct any information presented herein