From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-x22f.google.com (mail-wm0-x22f.google.com [IPv6:2a00:1450:400c:c09::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 655393B308 for ; Fri, 1 Apr 2016 04:01:25 -0400 (EDT) Received: by mail-wm0-x22f.google.com with SMTP id 127so10780162wmu.1 for ; Fri, 01 Apr 2016 01:01:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tieto.com; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-transfer-encoding; bh=7KvXakeXucPnio6ugTI25V0eWcoHnG2187aMpGJBtTU=; b=Ai3wUAiikxgpC9hQcY2c9azAxRG7haAhBPHORJFpC2JDC484oB6lnQ7Selds5a/eAG 2eSudcqK3TbW5wo5VYZwifaOvt/yG28uSfwdlmuWKI+x5HIjBKgxE5UNU6JEar17KNJr xAwVZoeaFV1vhvRhALk9QE9GJFzZz4deY7GPU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-transfer-encoding; bh=7KvXakeXucPnio6ugTI25V0eWcoHnG2187aMpGJBtTU=; b=Q8cXS4K1hucunUrVsbjeTe7qct8iQWgOHsOQCq+njeGQq1/7lEcoEZ4w2nrjbYTF1N JdHoMIM31at0tMbNAOVZvQ/S/IiBt6NmDWDdPpcemFprq7FK7KhZhiWntv1xoc+YUsBl q6q3z75UUdZqoMFzgVURhNgHwWvLzZOFdE8v/vjBryzLDOnkgdSFW17+GLx4UyO2zkZx 5uyh6e5+WuUnMa4+/7f19CYf3jPz4u87xsAUCSBUXGkvaK0XKCdgsDUmCUl27z41qXDY GfEuuxKm5p0vqR4UODAYxHgDOuvBOfslMoJVr9KtYHndiZfT0jxANv4WS9/gHTUhHd39 ub+Q== X-Gm-Message-State: AD7BkJL17r2WoflZ877Ekh4ww9BH1LU/Pdz4lgKymn3QS3pPcS8qi8RVQKb6L6o3nsd56dGmSqHGMwdIF5d6OCaeHGBk9LAjLDj+jR0+cVu9M8cU/a31YG+SAJ4Ozpa8vkJHY2ajjv2gWtYCSu5LV+t3MeVuhgDs+AxqjA== MIME-Version: 1.0 X-Received: by 10.194.81.103 with SMTP id z7mr7462452wjx.25.1459497684150; Fri, 01 Apr 2016 01:01:24 -0700 (PDT) Received: by 10.194.115.3 with HTTP; Fri, 1 Apr 2016 01:01:24 -0700 (PDT) In-Reply-To: References: <1458898743-21118-1-git-send-email-michal.kazior@tieto.com> Date: Fri, 1 Apr 2016 10:01:24 +0200 Message-ID: From: Michal Kazior To: "ath10k@lists.infradead.org" Cc: linux-wireless , Dave Taht , make-wifi-fast@lists.bufferbloat.net, codel@lists.bufferbloat.net, Michal Kazior Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-DomainID: tieto.com Subject: Re: [Make-wifi-fast] [RFC] ath10k: implement dql for htt tx X-BeenThere: make-wifi-fast@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Apr 2016 08:01:25 -0000 Re-posting text only as it was blocked by most mailing list servers: The original attachment can be fetched at: http://kazikcz.github.io/dl/2016-04-01-flent-ath10k-dql.tar.gz On 25 March 2016 at 10:55, Michal Kazior wrote: > On 25 March 2016 at 10:39, Michal Kazior wrote: >> This implements a very naive dynamic queue limits >> on the flat HTT Tx. In some of my tests (using >> flent) it seems to reduce induced latency by >> orders of magnitude (e.g. when enforcing 6mbps >> tx rates 2500ms -> 150ms). But at the same time it >> introduces TCP throughput buildup over time >> (instead of immediate bump to max). More >> importantly I didn't observe it to make things >> much worse (yet). >> >> Signed-off-by: Michal Kazior >> --- >> >> I'm not sure yet if it's worth to consider this >> patch for merging per se. My motivation was to >> have something to prove mac80211 fq works and to >> see if DQL can learn the proper queue limit in >> face of wireless rate control at all. >> >> I'll do a follow up post with flent test results >> and some notes. > > Here's a short description what-is-what test naming: > - sw/fq contains only txq/flow stuff (no scheduling, no txop queue limit= s) > - sw/ath10k_dql contains only ath10k patch which applies DQL to > driver-firmware tx queue naively > - sw/fq+ath10k_dql is obvious > - sw/base today's ath.git/master checkout used as base > - "veryfast" tests TCP tput to reference receiver (4 antennas) > - "fast" tests TCP tput to ref receiver (1 antenna) > - "slow" tests TCP tput to ref receiver (1 *unplugged* antenna) > - "fast+slow" tests sharing between "fast" and "slow" > - "autorate" uses default rate control > - "rate6m" uses fixed-tx-rate at 6mbps > - the test uses QCA9880 w/ 10.1.467 > - no rrul tests, sorry Dave! :) > > \ > Observations / conclusions: > - DQL builds up throughput slowly on "veryfast"; in some tests it > doesn't get to reach peak (roughly 210mbps average) because the test > is too short > > - DQL shows better latency results in almost all cases compared to > the txop based scheduling from my mac80211 RFC (but i haven't > thoroughly looked at *all* the data; I might've missed a case where it > performs worse) > > - latency improvement seen on sw/ath10k_dql @ rate6m,fast compared to > sw/base (1800ms -> 160ms) can be explained by the fact that txq AC > limit is 256 and since all TCP streams run on BE (and fq_codel as the > qdisc) the induced txq latency is 256 * (1500 / (6*1024*1024/8.)) / 4 > =3D ~122ms which is pretty close to the test data (the formula ignores > MAC overhead, so the latency in practice is larger). Once you consider > the overhead and in-flight packets on driver-firmware tx queue 160ms > doesn't seem strange. Moreover when you compare the same case with > sw/fq+ath10k_dql you can clearly see the advantage of having fq_codel > in mac80211 software queuing - the latency drops by (another) order of > magnitude because now incomming ICMPs are treated as new, bursty flows > and get fed to the device quickly. > > - slow+fast case still sucks but that's expected because DQL hasn't > been applied per-station > > - sw/fq has lower peak throughput ("veryfast") compared to sw/base > (this actually proves current - and very young least to say - ath10k > wake-tx-queue implementation is deficient; ath10k_dql improves it and > sw/fq+ath10k_dql climbs up to the max throughput over time) > > > To sum things up: > - DQL might be able to replace the explicit txop queue limiting > (which requires rate control info) > - mac80211 fair queuing works > > > A few plots for quick and easy reference: > > http://imgur.com/a/TnvbQ Micha=C5=82