Mellanox ConnectX-3 Pro ethtool Settings

Possibly overkill; needs actual testing.

#!/bin/bash

# Define the interface to configure
INTERFACE="enp1s0"

# rx tx buffersize
ethtool -G "$INTERFACE" rx 8192 tx 8192

# rss rx queues
ethtool -L "$INTERFACE" rx 32

# udp offload for tailscale
ethtool -K "$INTERFACE" rx-udp-gro-forwarding on rx-gro-list off

# Disable adaptive interrupt moderation and set status values
# per nvidia docs
ethtool -C "$INTERFACE" adaptive-rx off rx-usecs 0 tx-frames 64

RSS RX queues can be set even higher, (equal to thread count, 128 in my case, but should generally be 32 at most. Setting this way too high can cause memory usage to explode.

Leave a Reply

Your email address will not be published. Required fields are marked *