From: Pete Heist <pete@eventide.io>
To: "Toke Høiland-Jørgensen" <toke@toke.dk>
Cc: Georgios Amanakis <gamanakis@gmail.com>,
Dave Taht <dave.taht@gmail.com>,
Cake List <cake@lists.bufferbloat.net>
Subject: Re: [Cake] Lockup at high speeds
Date: Tue, 5 Jun 2018 13:46:15 +0200 [thread overview]
Message-ID: <7F63C1A8-07F2-4523-BF8D-6DA76F6FCF2B@eventide.io> (raw)
In-Reply-To: <87602zh2p0.fsf@toke.dk>
[-- Attachment #1: Type: text/plain, Size: 1366 bytes --]
> On Jun 4, 2018, at 1:26 AM, Toke Høiland-Jørgensen <toke@toke.dk> wrote:
>
> Georgios Amanakis <gamanakis@gmail.com> writes:
>
>> I am trying to reproduce this with veth to no avail.
>> I compiled a net-next kernel with Toke's configuration, and simplified
>> veth to only a client and a server.
>
> Hmm. Guess it may only be triggered by the way the mlx5 driver calls
> transmit, or something? Guess I'll have to go back and check once I get
> some spare cycles on that machine...
As another test, I tried redirecting egress and ingress of the loopback adapter through a common IFB. I couldn’t reproduce it either, but I can only hit ~3Gbit total with cake and flent running on one APU2.
If anyone wants to try it (faster hardware?), just run the attached ‘flentlo.sh' with no arguments as root on a box with cake and flent installed and netserver running. One run is done with noqueue and the other with cake datacentre.
Interestingly, for me the ‘datacentre' keyword actually both increases total throughput and reduces rtt in this case (3286Mbit/5ms vs 2838Mbit/15ms), so I left that in the test. I wonder if the rtt parameter affects the lockup in any way, but I doubt it.
Also, this is a case where using netperf UDP_RR reduces total throughput vs irtt (for me, 2910Mbit vs 3286Mbit), probably due to competition.
Pete
[-- Attachment #2: flentlo.sh --]
[-- Type: application/octet-stream, Size: 1316 bytes --]
#!/bin/bash
IFB_IFACE="ifblo"
IFACE="lo"
qos_on() {
modprobe act_mirred
# add ifb device
ip link add name $IFB_IFACE type ifb
tc qdisc add dev $IFACE handle ffff: ingress
ifconfig $IFB_IFACE up
# redirect ingress to ifb
tc filter add dev $IFACE parent ffff: protocol all prio 10 u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ${IFB_IFACE}
# redirect egress to ifb
tc qdisc add dev $IFACE root handle 1: prio bands 2 priomap 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
tc filter add dev $IFACE parent 1: protocol all prio 10 u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ${IFB_IFACE}
# add cake to ifb
tc qdisc add dev ${IFB_IFACE} root cake datacentre nonat unlimited
}
qos_off() {
tc qdisc del dev ${IFB_IFACE} root > /dev/null 2>&1
ifconfig ${IFB_IFACE} down > /dev/null 2>&1
tc qdisc del dev ${IFACE} handle ffff: ingress > /dev/null 2>&1
ip link delete dev ${IFB_IFACE} > /dev/null 2>&1
tc qdisc del dev $IFACE root > /dev/null 2>&1
}
run() {
flent rrul_be -l 60 -H localhost -p all_scaled --figure-width=10 --figure-height=7.5 -t $1 -o ${1}.png
}
if [ "$1" == "on" ]; then
qos_on
elif [ "$1" == "off" ]; then
qos_off
elif [ "$1" == "run" ]; then
qos_off
qos_on
run "$2"
flent -i *.gz
else
qos_off
run noqueue
qos_on
run ifb
qos_off
flent -i *.gz
fi
next prev parent reply other threads:[~2018-06-05 11:46 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-01 17:46 Toke Høiland-Jørgensen
2018-06-01 17:49 ` Jonathan Morton
2018-06-01 17:53 ` Toke Høiland-Jørgensen
2018-06-01 19:03 ` Georgios Amanakis
2018-06-01 19:23 ` Toke Høiland-Jørgensen
[not found] ` <9A273CA6-FDF6-485D-B466-8B01D4573BD9@gmail.com>
2018-06-01 19:58 ` Toke Høiland-Jørgensen
2018-06-02 17:08 ` Dave Taht
2018-06-02 18:21 ` Toke Høiland-Jørgensen
2018-06-02 18:55 ` Dave Taht
2018-06-02 19:25 ` Toke Høiland-Jørgensen
2018-06-03 14:56 ` Georgios Amanakis
2018-06-03 23:26 ` Toke Høiland-Jørgensen
2018-06-05 11:46 ` Pete Heist [this message]
2018-06-05 14:24 ` Pete Heist
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://lists.bufferbloat.net/postorius/lists/cake.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7F63C1A8-07F2-4523-BF8D-6DA76F6FCF2B@eventide.io \
--to=pete@eventide.io \
--cc=cake@lists.bufferbloat.net \
--cc=dave.taht@gmail.com \
--cc=gamanakis@gmail.com \
--cc=toke@toke.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox