From: "Toke Høiland-Jørgensen" <toke@redhat.com>
To: Felix Fietkau <nbd@nbd.name>, linux-wireless@vger.kernel.org
Cc: johannes@sipsolutions.net
Subject: Re: [PATCH 4/6] mac80211: minstrel_ht: significantly redesign the rate probing strategy
Date: Mon, 25 Jan 2021 12:56:27 +0100 [thread overview]
Message-ID: <87o8hdmdqs.fsf@toke.dk> (raw)
In-Reply-To: <20210124122812.49929-4-nbd@nbd.name>
Felix Fietkau <nbd@nbd.name> writes:
> The biggest flaw in current minstrel_ht is the fact that it needs way too
> many probing packets to be able to quickly find the best rate.
> Depending on the wifi hardware and operating mode, this can significantly
> reduce throughput when not operating at the highest available data rate.
>
> In order to be able to significantly reduce the amount of rate sampling,
> we need a much smarter selection of probing rates.
>
> The new approach introduced by this patch maintains a limited set of
> available rates to be tested during a statistics window.
>
> They are split into distinct categories:
> - MINSTREL_SAMPLE_TYPE_INC - incremental rate upgrade:
> Pick the next rate group and find the first rate that is faster than
> the current max. throughput rate
> - MINSTREL_SAMPLE_TYPE_JUMP - random testing of higher rates:
> Pick a random rate from the next group that is faster than the current
> max throughput rate. This allows faster adaptation when the link changes
> significantly
> - MINSTREL_SAMPLE_TYPE_SLOW - test a rate between max_prob, max_tp2 and
> max_tp in order to reduce the gap between them
>
> In order to prioritize sampling, every 6 attempts are split into 3x INC,
> 2x JUMP, 1x SLOW.
>
> Available rates are checked and refilled on every stats window update.
Very cool!
> With this approach, we finally get a very small delta in throughput when
> comparing setting the optimal data rate as a fixed rate vs normal rate
> control operation.
Can you quantify this "very small delta"? Would love to see some
benchmark data :)
-Toke
next prev parent reply other threads:[~2021-01-26 5:53 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-24 12:28 [PATCH 1/6] mac80211: minstrel_ht: use bitfields to encode rate indexes Felix Fietkau
2021-01-24 12:28 ` [PATCH 2/6] mac80211: minstrel_ht: update total packets counter in tx status path Felix Fietkau
2021-01-24 12:28 ` [PATCH 3/6] mac80211: minstrel_ht: reduce the need to sample slower rates Felix Fietkau
2021-01-24 12:28 ` [PATCH 4/6] mac80211: minstrel_ht: significantly redesign the rate probing strategy Felix Fietkau
2021-01-25 11:56 ` Toke Høiland-Jørgensen [this message]
2021-01-25 20:46 ` Felix Fietkau
2021-01-25 21:21 ` Toke Høiland-Jørgensen
2021-01-25 21:27 ` Felix Fietkau
2021-01-24 12:28 ` [PATCH 5/6] mac80211: minstrel_ht: show sampling rates in debugfs Felix Fietkau
2021-01-24 12:28 ` [PATCH 6/6] mac80211: minstrel_ht: remove sample rate switching code for constrained devices Felix Fietkau
2021-01-25 19:25 ` [PATCH 1/6] mac80211: minstrel_ht: use bitfields to encode rate indexes kernel test robot
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87o8hdmdqs.fsf@toke.dk \
--to=toke@redhat.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=nbd@nbd.name \
/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;
as well as URLs for NNTP newsgroup(s).