Does the Intel NICs work in the CPU connected PCIe lanes as well Or just via the chipset?
I first saw the ASPM issue with the CPU PCIe lanes on W680 boards. But seems to go much further back at least on Intel motherboards. Not sure about AMD.
My Experience on Intel Systems (Supermicro X10SLL-F/X10SLM(+)-F/X11SSL-F/X11SSM-F) with the Intel X710 worked in CPU Connected PCIe Slots as well as PCH/Chipset connected PCIe Slots. Maybe the difference is between PC6 (CPU Connected) and PC7/PC8 (PCH/Chipset Connected). Anyhow, the Difference between those States is very small compared to the Difference between PC2/PC3 and PC6.
Mellanox ConnectX-4 LX on those Systems in CPU Connected PCIe Slot would be stuck at PC2/PC3. In PCH/Chipset connected PCIe Slot it would be PC6.
I don't think I ever tested the Mellanox ConnectX-4 LX on an AMD System. I could now, but on AMD it's also more difficult to Troubleshoot since
powertop and
turbostat report MUCH LESS Information. Typically on AMD you only have 3 Package States IIRC. And the Software Tools are not always working great ...
So I cannot emphasize this enough: Testing with
powertop /
turbostat has to be complemented with measurements using a Watt-Meter ! Just like ASPM reporting of PCIe Devices can lie to the System (and BIOS can lie to the System as well), so can powertop and turbostat. I also had a ConnectX-2 reporting ASPM Supported on a Supermicro X9DRi-LN4F+ IIRC (not sure about the Package C-State the System was in, but that was clearly NOT possible).
EDIT 1: the Issue on the W680 System (if that's Intel 11th-13th Generation) if CPU PCIe Connected is probably due to PCIe Multi-VC (Multiple Virtual Channels). I mentioned that on my Repository briefly:
GitHub - luckylinux/aspm-troubleshooting: aspm-troubleshooting
But nope, I don't own such System and while disassembling BIOS, the
Multi-VC or
Virtual Channel Options didn't turn up either.