#318 Poor performance with e1000e driver

e1000e (109)


during the testing DRBD with using Intel NIC and e1000e (Intel 82571EB Gigabit Ethernet, version: 1.0.15-NAPI) driver I have identified very strange behavior. When I started replication for a few volumes (NIC with e1000e was destination) I had problem with running commands via SSH on this machine from other host. Those commands were performed very long. Replication was slow, as well. So I have changed hardware interface (on the same motherboard) which is supported by the e1000 driver and after that everything worked correctly and I did not have problem with slow running SSH commands.

Next I have prepared some test with using Samba, iSCSI and I have received this results:

Debian Lenny, kernel 32b:

iSCSI IET (e1000e):
block i/o: 54.7 write
block i/o: 62.7 read
file i/o: 54.3 write
file i/o: 58.5 read

iSCSI IET (e1000):
block i/o: 78.7 write
block i/o: 67.1 read
file i/o: 76.3 write
file i/o: 60.5 read

Samba (e1000e):
63.1 write
54.5 read

Samba (e1000):
102 write
56.9 read

Is hardware with e1000e worse then hardware with e1000? Have you noticed similar behavior?

I have tried e1000e with MSI and without MSI interrupts, a few version of this driver, with enabling and disabling protocol offload via ethtool but without results.

My main problem is very slow commands via SSH when e1000e is using via e.g. DRBD. Maybe something with interrupts?

Any suggestion?

Thank you in advance


  • Jesse Brandeburg

    hm, thanks for your report, I don't have any good ideas yet. e1000e should typically have better performance.

    One thing I have noticed is that DRBD uses the network very heavily so will greatly impact interactive response.

    I think you will likely have better interactive performance by either throttling drbd some, or by using tc rules to prioritize ssh traffic.

    Another option is to decrease the queue length, as well as using small TxDescriptor counts for the driver:

    ethtool -G eth0 tx 128

    ifconfig eth0 txqueuelen 100

    see if that helps. Does the interactive (ssh) workload work fine when no DRBD traffic?

  • arturpiechocki

    arturpiechocki - 2010-03-18


    Thank you for the reply.

    After adding -t option (force pseudo-tty allocation) to the ssh command, it seems to work correctly even under heavy load via DRBD

    Does the interactive (ssh) workload work fine when no
    DRBD traffic?

    Yes, ssh command without DRBD traffic has worked correctly

  • Todd Fujinaka

    Todd Fujinaka - 2013-07-09
    • status: open --> closed
  • Todd Fujinaka

    Todd Fujinaka - 2013-07-09

    Closing due to age.


Log in to post a comment.