genode/repos/dde_ipxe/patches
Alexander Boettcher 31e8b50b7c nic/ipxe: batch TX requests
A bunch of transmit requests received by the Uplink server (nic_router)
are currently added one by one to the ring buffer and every time the hardware
is notified to process each single request.

Instead, add as many as possible transmit requests in the ring buffer of
the hardware and when done trigger the hardware to process the ring.

Additionally, don't receive an "processed" TX IRQ for each element in the
ring, which causes high CPU load.

With this commit the TX IRQs in the ipxe driver for a

iperf -c X.X.X.X -t 60

from within a VM to the outside iperf server is reduced from about
~2'600'000 IRQs to about ~200'000. The overall CPU load for the driver
(when executed alone on CPU 0) is reduced from ~85 percent load to ~45 percent
load.

Issue #5149
2024-04-12 15:00:43 +02:00
..
dde_ipxe.patch dde_ipxe: remove dde_kit 2015-04-23 16:47:58 +02:00
intel_tx_batch.patch nic/ipxe: batch TX requests 2024-04-12 15:00:43 +02:00
intel_update.patch dde_ipxe: update Intel NIC support list from upstream 2022-04-13 08:07:58 +02:00
intel.patch dde_ipxe: enable Intel i211 network card 2019-03-04 09:20:24 +01:00
realtek.patch dde_ipxe: improve throughput for Realtek devices 2021-02-23 12:02:43 +01:00
tg3.patch dde_ipxe: enable BCM57cxx cards 2015-07-06 12:22:27 +02:00