Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp3572404pxb; Mon, 25 Jan 2021 21:54:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJzbvhkuwe2H8pYGX//FGScgZhHJA/3urN9qdh8r0yAzlbKApqDlgMox2B62rrVWZ7UD1oXh X-Received: by 2002:aa7:dcc9:: with SMTP id w9mr3225887edu.22.1611640490069; Mon, 25 Jan 2021 21:54:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611640490; cv=none; d=google.com; s=arc-20160816; b=IP6xAVRsrnQ34KwqoO4iSn2yf/pXy6oIZmrkH1dApocNAVz4PQW5R+ltz1ajs8TE4S 6HwyvWRfDiD4r41SmqRhlIFHD6pyv1goQMTNseCZe+bmAIBaPZ4imEKfyIRF9oJZITK1 deGJKpDeReOKtqMiGJRwaQ35uBohD508730gAwGaDnBEwD0kXsuMS415kLSq07umqasU HRgT1lshf1KurjBoC04PPtlyU8T1GyB//AEjlKWWvzsZwd+FkRYVxp+7wnTqHCnIJzUX KLcrG5aU8ZGo2nXo3cJ4xytYq1C7+lX8hkq9xBktKeZOpYpFzs4ppxvFGnZVOWpoQi1E W42g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:dkim-signature; bh=EkySjmyy5bV42XAMy1/nKNEVTl7EAWsq5w4RqirjjF0=; b=S2QzJj4hsfNVR8Y9GzPeC0CfY/9NYSal1cxZt1HsAqqkNAe3ixNbjv9EQtSHOWJFb5 XqmGS/6SZAg7lDPyadbl43GNVT/aajvkMHO6/75MXR/H/WvHymABK7YhQbl5q/iTEnqe gxt/ouq1FKu/0gFhCxlyyRhiubVu7y3TrvTYNmWzU65/uz1BOXaOxJSes4Zskvd43qC8 XmFF8+w00/H4n1BoSc2SBB60fK06xVzjlDw4PKRFRQ+J1UHrDIJx63Y6RTzhnjXP+J9W N2RVMFOLD/iB1aZB0aMfMEvs96LKM5efn2HtxOtJ51O5VmP9o8fDaPVpd0KObPM6jp3z ++iQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=C8jaTRnv; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n19si6806536ejc.352.2021.01.25.21.54.26; Mon, 25 Jan 2021 21:54:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=C8jaTRnv; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388870AbhAZFx1 (ORCPT + 99 others); Tue, 26 Jan 2021 00:53:27 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:46005 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727964AbhAYMVE (ORCPT ); Mon, 25 Jan 2021 07:21:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1611577144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=EkySjmyy5bV42XAMy1/nKNEVTl7EAWsq5w4RqirjjF0=; b=C8jaTRnvXZJP4TefcwGGRdn4UzpDUU9bCQhEDiHT8BIQtX+0jHFCpM8G+oAft4PAhPL+lq sm+SdIMvv9ATR3Zyixcxk/BveiH+D+ZrnEOAobRLGVOEt3fuDYtePPOXt0bgICXdO17nd3 4PW41TVTGAiGd8+bAt/48pPXTX0NJBo= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-582-f2fwulGJNayQEJo9XInjRw-1; Mon, 25 Jan 2021 06:56:30 -0500 X-MC-Unique: f2fwulGJNayQEJo9XInjRw-1 Received: by mail-ej1-f72.google.com with SMTP id n18so3652709ejc.11 for ; Mon, 25 Jan 2021 03:56:30 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date :message-id:mime-version; bh=EkySjmyy5bV42XAMy1/nKNEVTl7EAWsq5w4RqirjjF0=; b=mY/orPQhUJBSoj1r7R4vIv+oK10ihPCFmWHGht04+Md3xfxSbsD6ZSuv1N3fK1Cyex cPKl+K883tYFZ7UeG74tPX+SR0QKvry4Yb7IApN6vn/ELF8Ukg84WLERmHaYHDmWO9g1 kX/o8/YuX4NkazK+mu7IgiP/oEFqTRqItwEHDK8kVdHUuaIRgzHUo2q7lWpnhPhH3W20 MU+8W0hAaqC8mFFuX0slozJBDd07++mYJCac5DrYsNQYoCGlWwAWPW+Dl14up9zUxnQz Jg5KLSLwfSXF3L024/40JhZlsFykLRzuhEQIfpVOEMHCOT4BkBop6OyDHO/F6bWfffTp cdRg== X-Gm-Message-State: AOAM532IHFxlHj7+fu4ap3TsURlF6xanQzu5Ho6W2OxQjf68kV7sHGww /QbyhAKrDlG+BLRFB29NcFygLiyWuZXzLsAMV0prFvvsyWlcpBAbDSumBuZUmdUtTiScIoK0OMa aL9kA42+qs5UEvZPUD6097CD1z3Q= X-Received: by 2002:a17:906:28d6:: with SMTP id p22mr115658ejd.365.1611575789409; Mon, 25 Jan 2021 03:56:29 -0800 (PST) X-Received: by 2002:a17:906:28d6:: with SMTP id p22mr115654ejd.365.1611575789279; Mon, 25 Jan 2021 03:56:29 -0800 (PST) Received: from alrua-x1.borgediget.toke.dk ([45.145.92.2]) by smtp.gmail.com with ESMTPSA id ce7sm8177313ejb.100.2021.01.25.03.56.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Jan 2021 03:56:28 -0800 (PST) Received: by alrua-x1.borgediget.toke.dk (Postfix, from userid 1000) id 643D518033D; Mon, 25 Jan 2021 12:56:27 +0100 (CET) From: Toke =?utf-8?Q?H=C3=B8iland-J=C3=B8rgensen?= To: Felix Fietkau , linux-wireless@vger.kernel.org Cc: johannes@sipsolutions.net Subject: Re: [PATCH 4/6] mac80211: minstrel_ht: significantly redesign the rate probing strategy In-Reply-To: <20210124122812.49929-4-nbd@nbd.name> References: <20210124122812.49929-1-nbd@nbd.name> <20210124122812.49929-4-nbd@nbd.name> X-Clacks-Overhead: GNU Terry Pratchett Date: Mon, 25 Jan 2021 12:56:27 +0100 Message-ID: <87o8hdmdqs.fsf@toke.dk> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Felix Fietkau 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