mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-25 08:21:08 +00:00
5e5fe7291a
The commit adds support to throttle the rate of the RX IRQs to a specified value. The effect is, that no RX IRQs below the time threshold will fire and therefore the CPU load gets reduced on the host. Trade-off gaming between cpu load, throughput, overload. Modular Sculpt 23.10 on S938 as testcase. In brackets the CPU affinity is denoted. ipxe (0,0) -> nic_router (1,0) -> Debian VM vbox6 (3,0) and (3,1) VM: iperf -C X.X.X.X -t 60 -R iperf server X.X.X.X is outside Sculpt and sends data due to '-R' to VM Non representative measure points: cpu load - ipxe - nic_router - iperf throughput -------------------------------------------------- w/o patch - ~80% - ~50% - ~706 MBit/s - 0 -> throttling off by default on S938 patch 651 - ~20% - ~35% - ~763 MBit/s - 651 -> 0.166ms throttle RX IRQ patch 5580 - ~15% - ~25% - ~650 MBit/s - 5580 -> 1.4ms throttle RX IRQ Issue #5149
20 lines
519 B
Makefile
20 lines
519 B
Makefile
LICENSE := GPLv2
|
|
VERSION := git
|
|
DOWNLOADS := ipxe.git
|
|
|
|
URL(ipxe) := https://github.com/ipxe/ipxe.git
|
|
REV(ipxe) := c4bce43c3c4d3c5ebb2d926b58ad16dc9642c19d
|
|
DIR(ipxe) := src/lib/dde_ipxe
|
|
|
|
PATCHES := patches/dde_ipxe.patch \
|
|
patches/intel.patch \
|
|
patches/intel_update.patch \
|
|
patches/tg3.patch \
|
|
patches/realtek.patch \
|
|
patches/intel_tx_batch.patch \
|
|
patches/intel_rx_throttle.patch
|
|
|
|
PATCH_OPT := -p1 -d ${DIR(ipxe)}
|
|
|
|
# vi: set ft=make :
|