交换机对PCIE进行降速

对PCIE进行降速:

1) lspci:查看PCIE的总线号和设备号
07:00.0 Communication controller: Device cb10:5236

2)setpci -s 07:00.0 CAP_EXP+0x30.b=0x1
setpci -s 07:00.0 CAP_EXP+0x10.b=0x60
上述开始对pcie进行降速
修改的作用:
1、把mac的pcie链路的 target speed改成2.5GT/S Target Link Speed
2、然后从新进行了一次链路训练
参考:
更完美的指令如下:
1、SPEED设置5GT/S
setpci -s 00:03.3 CAP_EXP+0x30.b=0x2
setpci -s 00:03.3 CAP_EXP+0x10.b=0x60
2、SPEED设置2.5GT/S
setpci -s 00:03.3 CAP_EXP+0x30.b=0x1
setpci -s 00:03.3 CAP_EXP+0x10.b=0x60
就是5GT设置的第二条命令改一下,和2.5GT保持一致
3) lspci -s 07:00.0 -vvv 查看是否降速成功
查看LnkSta和LnkCtl2是否都变成2.5GT/S(理论上一致)!!!
对于PCIe设备,lnkctl2的target speed是用来设置设备的最高速度能力。
在进行重训练后,设备会尝试与主机进行协商,以确定最终的链接速度。
根据理论上的设定,训练后的最终速度应该与target speed一致。
实际情况可能会有所不同。有时候,重训练后设备的最终速度可能不会与target speed完全一致。
这可能是由于多种因素导致的,例如设备和主机之间的兼容性问题、电缆质量、信号干扰等。
4) 如果两者不一致,即lnkctl2的Target Link Speed为2.5GT/S, lnksta的speed还是5GT/S
则尝试修改mac连接的pcie接口的参数,先看连接的pcie接口的地址:lspci -vt
±09.0-[07]----00.0 Device cb10:5236
5) 降低对接的PCIe接口的速度来实现,指令如下:
setpci -s 09.0 CAP_EXP+0x30.b=0x1
setpci -s 09.0 CAP_EXP+0x10.b=0x60
6) lspci -s 07:00.0 -vvv 查看是否降速成功
上述进行了两种降速方法:
1、直接针对PCIE的总线号和设备号进行指令降速,重新进行链路训练,让设备与主机自动协商降速,以确定最终的链接速度
2、通过降低对接的PCIe接口的速度来实现间接降低设备的速度的目的。
通过降低PCIe接口的速度,可以限制设备与主机之间的数据传输速率,从而实现降速的效果

你可能感兴趣的:(交换机,信息与通信)