From: "Toke Høiland-Jørgensen" <toke@redhat.com>
To: Kan Yan <kyan@google.com>, Yibo Zhao <yiboz@codeaurora.org>
Cc: Felix Fietkau <nbd@nbd.name>,
Johannes Berg <johannes@sipsolutions.net>,
linux-wireless@vger.kernel.org,
make-wifi-fast@lists.bufferbloat.net,
John Crispin <john@phrozen.org>,
Lorenzo Bianconi <lorenzo@kernel.org>,
linux-wireless-owner@vger.kernel.org
Subject: Re: [Make-wifi-fast] [PATCH RFC/RFT 4/4] mac80211: Apply Airtime-based Queue Limit (AQL) on packet dequeue
Date: Sun, 29 Sep 2019 21:18:24 +0200 [thread overview]
Message-ID: <87muemykqn.fsf@toke.dk> (raw)
In-Reply-To: <CA+iem5sGkRQy4B=Mz-C90sfqgFmuywa=W7Yjy2CDd8hfppQkvQ@mail.gmail.com>
Kan Yan <kyan@google.com> writes:
>> No, ath10k would continue to do what it was always doing. Drivers that
>> can report after-the-fact airtime usage per-frame (like ath9k) will
>> continue to do that. In both of those cases, the airtime estimate is
>> only used to throttle the queue, not to schedule for fairness.
> You are right, I didn't realize ath9k reports per frame airtime usage.
>
>> Yeah, I was wondering about that. Makes sense. Why 24ms, exactly?
> The per interface 24 ms queue limit is an empirical number that works
> well for both achieve low latency when there is a lot of stations and
> get high throughput when there is only 1-2 stations. We could make it
> configurable.
Right. "Found by trial and error" is a fine answer as far as I'm
concerned :)
But yeah, this should probably be configurable, like BQL is.
>> BTW, I think Felix' concern about powersave was in relation to AQL: If
>> we don't handle power save in that, we can end up in a situation where
>>the budget for packets allowed to be queued in the firmware is taken up
>> entirely by stations that are currently in powersave mode; which would
>> throttle the device completely. So we should take that into account for
>> AQL; for the fairness scheduler, stations in powersave are already
>> unscheduled, so that should be fine.
> I think the accounting for the airtime of frames in the power saving
> queue could affect both the fairness scheduler and AQL.
> For chipset with firmware offload, PS handling is mostly done by
> firmware, so host driver's knowledge of PS state could be slightly
> out-of-dated. The power save behavior also make it harder to the
> airtime_weight correct for the fairness scheduler.
Hmm, maybe. I'm not sure how significant this effect would be, but I
guess we'll need to find out :)
> Powersave mode's impact to AQL is much smaller. The lower per station
> queue limit is not impacted by other stations PS behavior, since the
> estimated future airtime is not weighted for other stations and a
> station won't get blocked due to others stations in PS mode.
> Station in PS mode do affects AQL's higher per interface limit, but in
> an inconsequential way. The per interface AQL queue limit is quite
> large (24 ms), hence airtime from packets in PS queue is unlikely to
> have a significant impact on it. Still, it will be better if the
> packet in power saving queue can be taken into account.
I guess the risk is lower when with a 24ms per-iface limit; but with
enough stations I guess it could still happen, no? So we should probably
handle this case...
>> > make it easier to schedule multiple stations, I think it has some merit
>> > that makes it worth trying out. We should probably get the AQL stuff
>> > done first, though, and try the virtual time scheduler on top of that.
>> Agree that we should get the AQL stuff done first since I believe it
>> will help to fix the issue mentioned above.
> That sounds like a good plan. The virtual time scheduler is more
> involved and will take more work to get it right. It make sense to get
> AQL done first.
Cool. Are you going to submit a ported version of your implementation?
Then we can work from the two submissions and see if we can't converge
on something...
-Toke
next prev parent reply other threads:[~2019-09-29 19:18 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-19 12:22 [Make-wifi-fast] [PATCH RFC/RFT 0/4] Add Airtime Queue Limits (AQL) to mac80211 Toke Høiland-Jørgensen
2019-09-19 12:22 ` [Make-wifi-fast] [PATCH RFC/RFT 1/4] mac80211: Rearrange ieee80211_tx_info to make room for tx_time_est Toke Høiland-Jørgensen
2019-10-01 8:44 ` Johannes Berg
2019-10-01 9:08 ` Toke Høiland-Jørgensen
2019-10-01 9:12 ` Johannes Berg
2019-10-01 9:39 ` Toke Høiland-Jørgensen
2019-09-19 12:22 ` [Make-wifi-fast] [PATCH RFC/RFT 2/4] mac80211: Add API function to set the last TX bitrate for a station Toke Høiland-Jørgensen
2019-10-01 8:46 ` Johannes Berg
2019-10-01 9:09 ` Toke Høiland-Jørgensen
2019-09-19 12:22 ` [Make-wifi-fast] [PATCH RFC/RFT 3/4] ath10k: Pass last TX bitrate up to mac80211 Toke Høiland-Jørgensen
2019-09-19 12:22 ` [Make-wifi-fast] [PATCH RFC/RFT 4/4] mac80211: Apply Airtime-based Queue Limit (AQL) on packet dequeue Toke Høiland-Jørgensen
2019-09-19 17:44 ` Peter Oh
[not found] ` <879913e9-4254-1381-07f6-d860fb0b8de0@candelatech.com>
2019-09-19 17:54 ` Peter Oh
2019-09-19 18:03 ` Peter Oh
2019-09-19 18:18 ` Dave Taht
2019-09-19 20:09 ` John Yates
2019-09-19 20:15 ` Toke Høiland-Jørgensen
2019-09-19 18:03 ` Toke Høiland-Jørgensen
2019-09-20 12:06 ` Lorenzo Bianconi
2019-09-20 12:54 ` Toke Høiland-Jørgensen
2019-09-20 13:06 ` Lorenzo Bianconi
2019-09-20 13:32 ` Toke Høiland-Jørgensen
2019-09-20 22:38 ` Kan Yan
2019-09-20 22:55 ` Kan Yan
2019-09-21 12:11 ` Toke Høiland-Jørgensen
2019-09-25 7:37 ` Yibo Zhao
2019-09-25 8:11 ` Toke Høiland-Jørgensen
2019-09-25 11:54 ` Yibo Zhao
2019-09-25 12:52 ` Toke Høiland-Jørgensen
2019-09-26 0:27 ` Kan Yan
2019-09-26 0:34 ` Kan Yan
2019-09-26 5:57 ` Toke Høiland-Jørgensen
2019-09-26 6:04 ` Toke Høiland-Jørgensen
2019-09-26 12:53 ` Felix Fietkau
2019-09-26 13:17 ` Toke Høiland-Jørgensen
2019-09-26 13:47 ` Felix Fietkau
2019-09-26 15:19 ` Toke Høiland-Jørgensen
2019-09-27 2:42 ` Kan Yan
2019-09-27 6:12 ` Toke Høiland-Jørgensen
2019-09-27 9:20 ` Yibo Zhao
2019-09-28 20:24 ` Kan Yan
2019-09-29 19:18 ` Toke Høiland-Jørgensen [this message]
2019-10-01 4:47 ` Kan Yan
2019-10-01 6:57 ` Toke Høiland-Jørgensen
2019-09-19 14:12 ` [Make-wifi-fast] [PATCH RFC/RFT 0/4] Add Airtime Queue Limits (AQL) to mac80211 Toke Høiland-Jørgensen
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/make-wifi-fast.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87muemykqn.fsf@toke.dk \
--to=toke@redhat.com \
--cc=johannes@sipsolutions.net \
--cc=john@phrozen.org \
--cc=kyan@google.com \
--cc=linux-wireless-owner@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=lorenzo@kernel.org \
--cc=make-wifi-fast@lists.bufferbloat.net \
--cc=nbd@nbd.name \
--cc=yiboz@codeaurora.org \
/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