How to Tune Network Performance on DigitalOcean Gradient™ AI GPU Droplets

Validated on 26 Sep 2024 • Last edited on 18 Mar 2026

DigitalOcean Droplets are Linux-based virtual machines (VMs) that run on top of virtualized hardware. Each Droplet you create is a new server you can use, either standalone or as part of a larger, cloud-based infrastructure.

GPU Droplets benefit from network tuning to maximize throughput, especially when accessing Network File Storage shares or communicating between nodes. Two optimizations improve throughput for GPU Droplets:

  • Increasing TCP buffer sizes to improve throughput for high-bandwidth connections.
  • Enabling jumbo frames on the VPC private interface (eth1) to reduce overhead.

These settings are specific to GPU Droplets and persist across reboots.

Configure TCP Buffer Sizes

Create a sysctl configuration file to increase the maximum TCP send and receive buffer sizes to 16 MB. Open a new file in your text editor:

sudo nano /etc/sysctl.d/99-gpu-network-tuning.conf

Add the following configuration:

net.core.wmem_max=16777216 net.ipv4.tcp_rmem=4096 87380 16777216 net.ipv4.tcp_wmem=4096 65536 16777216


Save and close the file, then apply the settings:

```shell
sudo sysctl --system

The file in /etc/sysctl.d/ ensures the settings persist across reboots.

Configure MTU

The VPC private interface, eth1, on GPU Droplets supports jumbo frames with an MTU (Maximum Transmission Unit) of 9000. The method for configuring MTU depends on which network management tool your distribution uses.

Ubuntu and Debian use Netplan for network configuration. The AI/ML-ready image provided for GPU Droplets uses Netplan.

Open the Netplan configuration file in your text editor:

sudo nano /etc/netplan/50-cloud-init.yaml

Find the section for eth1 (the VPC interface). Look for the line mtu: 1500 under the eth1 entry and change it to mtu: 9000. This enables jumbo frames on the VPC interface.

Then apply the change:

sudo netplan apply

Because this edits the Netplan configuration directly, the MTU setting persists across reboots.

Red Hat-based distributions, including Rocky Linux, AlmaLinux, and Fedora, use NetworkManager and the nmcli (Network Manager Command Line Interface) tool for network configuration. Instead of editing a YAML file, you use a terminal command to update the connection profile.

Set the MTU to 9000 on eth1:

sudo nmcli connection modify eth1 ethernet.mtu 9000

Apply the change:

sudo nmcli connection up eth1

NetworkManager saves this configuration in /etc/NetworkManager/system-connections/, so it persists across reboots.

Verify

Confirm the sysctl values are active:

sysctl net.core.rmem_max net.core.wmem_max net.ipv4.tcp_rmem net.ipv4.tcp_wmem

Confirm the MTU is set to 9000 on eth1:

ip link show eth1 | grep mtu

Automate with User Data

You can automatically configure jumbo frames when you create a GPU Droplet by using user data. The following cloud-config file sets the MTU to 9000 on the VPC interface at boot:

  • ip link set dev eth1 mtu 9000

You can enter this `cloud-config` file on the GPU Droplet creation page in the Control Panel, pass it to the API with the `user_data` field, or pass it to the CLI with the `--user-data-file` flag.

We can't find any results for your search.

Try using different keywords or simplifying your search terms.