Received: by 2002:a05:6358:16cc:b0:ea:6187:17c9 with SMTP id r12csp6599725rwl; Mon, 9 Jan 2023 10:21:02 -0800 (PST) X-Google-Smtp-Source: AMrXdXunLrYBJ4+EnDSPivhJTWj/YEkroU/QHOQwKXAicST6qSVl6O69RzyqBHSAD+Vbk7DbnalG X-Received: by 2002:a05:6a20:7d9b:b0:b5:9d81:4171 with SMTP id v27-20020a056a207d9b00b000b59d814171mr11361312pzj.24.1673288462384; Mon, 09 Jan 2023 10:21:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673288462; cv=none; d=google.com; s=arc-20160816; b=Otpl65CwBYFgCzwqJNqt10cH8ncX84sGODtsgeGyJi3u/A5il0LEcWmOlVk4W4+GyH 0ygKJd8w0R3rsdXwFYqbdqDxwlJ+IFNN81aHk9pLV3fC0kmR8CAvC9nRpdQzIJCqKvtZ 5YZStqWonA1k8LhMd060FgyJkGAnM4LIQICfct/FL07zDQXPHDS9QmUW2WlF4IVnYCwY /IrBhEIdKRJ4IHp/TsE+ZLQ4X+KN4Ip4VWQt+dLzX21wYV2kC4aB/ELwJDSUHAvTxDlZ 9CMupL4SRw7vW/pwHrIjoJ5eAY7jqZcB2qOtPMIL4+ZZ2conZL3ST6JSuksZL6aM8Hj3 RPuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:sender:dkim-signature; bh=v8mDl6z8HZB+9Kmvxhak2TbVtn9xL/oPkERHONVaK/o=; b=xLdnn4dgBOfZ6YJaGhIws8w+gCmt6pDI6z2biN/WIwQBCgcgcYLoPpCd+N/hUGs+qt riFGJtExxsWutoh7dtyB9DUY3SmAAXo4iuoSbLjxYlQKv5nVNyyQs/2hIe0mx/yVkHBc Jz50VEpSJLdC17n/h0oE17R+e7I7w8In01l08wPWB1cZ/Y4aY7Z0g+9OkAAToyohPFe6 cxEuA7Zzi01ngOotpneWYG4Dakh+gUcjBa2lgWCQ/DYfoRIvYFqAdlolOaK/UeDW+VRF m9jpIlk68v8v+AZYeGvOzkS6o8026Md46mElKk/wqpHr5OnnE81eehrt7TQsXp+kZug/ Uiqw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=IrAiD+We; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n20-20020a635914000000b00498688359b6si9797001pgb.287.2023.01.09.10.20.55; Mon, 09 Jan 2023 10:21:02 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=IrAiD+We; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237554AbjAISK2 (ORCPT + 53 others); Mon, 9 Jan 2023 13:10:28 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58444 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237291AbjAISI5 (ORCPT ); Mon, 9 Jan 2023 13:08:57 -0500 Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com [IPv6:2607:f8b0:4864:20::52a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6C1BC232; Mon, 9 Jan 2023 10:08:40 -0800 (PST) Received: by mail-pg1-x52a.google.com with SMTP id q9so6444975pgq.5; Mon, 09 Jan 2023 10:08:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:sender :from:to:cc:subject:date:message-id:reply-to; bh=v8mDl6z8HZB+9Kmvxhak2TbVtn9xL/oPkERHONVaK/o=; b=IrAiD+WenjCOrXbXt8CHP0KM/kRGlzZglFdJYig8j5c+YduPyy214fU95mZg19YZkQ 6If8TiMTCLETa696jiUhr8lxUtbHqo/oWKanSDA1M81PLYUn5V8qOopxrztev4v2o+xS V2WA8iphWw18eOMfI2BgQAfYq1ZX2nlK2k5EoWL9e5OUP6fgSnLqENq/CIg9Sh9q6iu4 vV+CoMLnAbgl8Fzj2B+BU+TrePgajPu1J04qyNvFN2hRraF72WvETFCxK7Xy32dwolKT aKdW3jdopXXVKJ7gmLyeqSd2CfFnMBbrBjyC614BjE2lw+mf0XsK77jr5I5etdCJOh6A 0MHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=v8mDl6z8HZB+9Kmvxhak2TbVtn9xL/oPkERHONVaK/o=; b=39JLb+tqVUa57D27OmnDZbbowm7WmniRk4DFjqrabzcND/jC4WaBCH6aWxDqv4+jbA Vp4R5vMCgleg/XdASu0yCHqf4dQj0nJrUl3gKDcgeBs1CwNTwYZZMWYq90nawMIkC7xP 4qI6NmEadrTwLW5HjsH24LW+Jw6J4GVw/0SeDIimzw/puEHnPBCD0sPCIKP/Tv+ai/Lx +WhJLpY8bXC/c/VREMoNjWivmQhAjyJbUyfTj+emHTqgzme/5f45IdUjlNNrYLe9UDvd 8qM+tqrJhtiE1RjUMnS0pu+UAqvunkARumdjpqqYXfiCc8IWGz7I/Yx0HAeJ4a78V6bo XJbg== X-Gm-Message-State: AFqh2krUpwYnOZY/wPEu78WxcG0THPClhtXuRDE1u5VRzKkIJzKqq5gv pjijonAvFdBWEtxaeSURZjA= X-Received: by 2002:aa7:96f9:0:b0:582:7007:3fec with SMTP id i25-20020aa796f9000000b0058270073fecmr29248932pfq.11.1673287719766; Mon, 09 Jan 2023 10:08:39 -0800 (PST) Received: from localhost (2603-800c-1a02-1bae-a7fa-157f-969a-4cde.res6.spectrum.com. [2603:800c:1a02:1bae:a7fa:157f:969a:4cde]) by smtp.gmail.com with ESMTPSA id 186-20020a6216c3000000b0057fec210d33sm5215812pfw.152.2023.01.09.10.08.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Jan 2023 10:08:39 -0800 (PST) Sender: Tejun Heo Date: Mon, 9 Jan 2023 08:08:37 -1000 From: Tejun Heo To: hanjinke Cc: Jan Kara , Michal =?iso-8859-1?Q?Koutn=FD?= , josef@toxicpanda.com, axboe@kernel.dk, cgroups@vger.kernel.org, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, yinxin.x@bytedance.com Subject: Re: [External] Re: [PATCH v3] blk-throtl: Introduce sync and async queues for blk-throtl Message-ID: References: <20221226130505.7186-1-hanjinke.666@bytedance.com> <20230105161854.GA1259@blackbody.suse.cz> <20230106153813.4ttyuikzaagkk2sc@quack3> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, On Sat, Jan 07, 2023 at 12:44:35PM +0800, hanjinke wrote: > For cost.model setting, We first use the tools iocost provided to test the > benchmark model parameters of different types of disks online, and then save > these benchmark parameters to a parametric Model Table. During the > deployment process, pull and set the corresponding model parameters > according to the type of disk. > > The setting of cost.qos should be considered slightly more,we need to make > some compromises between overall disk throughput and io latency. > The average disk utilization of the entire disk on a specific business and > the RLA(if it is io sensitive) of key businesses will be taken as > important input considerations. The cost.qos will be dynamically fine-tuned > according to the health status monitoring of key businesses. Ah, I see. Do you use the latency targets and min/max ranges or just fixate the vrate by setting min == max? > For cost.weight setting, high-priority services will gain greater > advantages through weight settings to deal with a large number of io > requests in a short period of time. It works fine as work-conservation > of iocost works well according to our observation. Glad to hear. > These practices can be done better and I look forward to your better > suggestions. It's still in progress but resctl-bench's iocost-tune benchmark is what we're starting to use: https://github.com/facebookexperimental/resctl-demo/blob/main/resctl-bench/doc/iocost-tune.md The benchmark takes like 6 hours and what it does is probing the whole vrate range looking for behavior inflection points given the scenario of protecting a latency sensitive workload against memory leak. On completion, it provides several solutions based on the behavior observed. The benchmark is destructive (to the content on the target ssd) and can be tricky to set up. There's installable image to help setting up and running the benchmark: https://github.com/iocost-benchmark/resctl-demo-image-recipe/actions The eventual goal is collecting these benchmark results in the following git repo: https://github.com/iocost-benchmark/iocost-benchmarks which generates hwdb files describing all the found solution and make systemd apply the appropriate configuration on boot automatically. It's still all a work in progress but hopefully we should be able to configure iocost reasonably on boot on most SSDs. Thanks. -- tejun