SQM / Offload / Packet Steering on x86-64 + ConnectX

Hi, I tried to search for some answers but I didn't find many good points. Some folks talked about Software Offload, but I'm trying to understand the plethora of options.

My setup:

Core i7 7700K system running proxmox 8.1 w/ an OpenWRT snapshot VM
Mellanox Connect-X 4 passthru'd to the OpenWRT VM, 2x 1GbE transceivers
1Gbit/100Mbit internet right now, 25Gbit/25Gbit in near future (and 2x 25GbE transceivers are ready)

The questions I have are:

  • Is there any hardware functionality in the ConnectX that can be utilized by OpenWRT?
  • What happens when I don't enable software offload at all? I haven't seen any real difference with software offload on/off when running bufferbloat, but I can almost never get a good bufferbloat (always 3-4ms added latency when downloading, always 0ms latency when uploading)
  • Do you still need irqbalance when you run SQM and software offload?
  • Do you need packet steering enabled in the above setup as well?

If there is a better place to read about this, feel free to point me in that direction.

Thanks!