Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp694928pxb; Thu, 21 Jan 2021 18:20:45 -0800 (PST) X-Google-Smtp-Source: ABdhPJxA3OS5JvYmxDAi/+wBVBZM7JSPPHmkX5eQ5yxKOWwgiS9SvBbJwoYgWzt7yZb70B7M2Jz0 X-Received: by 2002:a17:906:76d6:: with SMTP id q22mr1474073ejn.221.1611282045787; Thu, 21 Jan 2021 18:20:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611282045; cv=none; d=google.com; s=arc-20160816; b=U7DIUZfzJOWYxCWUB+pfHhxNVMwa7QmufU6eUmHYCsMaUiNyheiTXTQm6C6UbYfw3W sh9vV9OwRw3ZTn686EJFtjQ/Tcg4rLlzIaSEQXN8WsSWsf62KKBppH6o9dsCgXriAD7v E3Z95i+7/4R9yJgGGBGM6Lg/ecVIrXxGLt4jGqajyKNnt2ZETwE/KHeK0T5htvf/ft9G 8yk0VsHqzlLKjvyr0+8P5Z7G6JAaL1r2OZInwP17kph1oURB53pNjNa/TIb69Pr+uUSr I5nUZv1B+sdD/EVrywlrLrad0c1f4gB+2dCujZ7ZjgnQIfZp666U35S+6NwIfYh+B9+F kX7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=B/xfxbM1r7+H+ADA7G0A/6FrvNpe1RmIpDFD2XkJLv8=; b=rIPuzwxOysUT14HE70L0kP6BYLLhW2o8wS6xlKjvCw5R3tQd6qY+uV+yE4XI3DP2Sx SEgHiWUR7qHg/6nQ4dbRbUz+ERXNUjFitiqJUfsLpeiBqPs3Fm41klFhfORuBCSdwvhz qV7bDRaM4LtZBo3BaaFo7wT1PBNNP6o2/FxcFsgo9UkqQaMPENLMfNmSvBG06ZzzHU3J /8hjvuEbPo0gDOWOWIIO+3aX+S12dz0anqGzuD+kCYEMzeEm6U64lYGcNxyPNeErRwrn fJ5uys56dKftsZwMAu3nhvCs07cM6NqoGiVI+fjBdL9ZSpFRIi1dUzzQFRoUETVhoOdU TmVg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w14si1385885edu.518.2021.01.21.18.20.21; Thu, 21 Jan 2021 18:20:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726067AbhAVA42 (ORCPT + 99 others); Thu, 21 Jan 2021 19:56:28 -0500 Received: from szxga04-in.huawei.com ([45.249.212.190]:11176 "EHLO szxga04-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725765AbhAVA4W (ORCPT ); Thu, 21 Jan 2021 19:56:22 -0500 Received: from DGGEMS411-HUB.china.huawei.com (unknown [172.30.72.58]) by szxga04-in.huawei.com (SkyGuard) with ESMTP id 4DMLPF0bx9zl8J2; Fri, 22 Jan 2021 08:54:09 +0800 (CST) Received: from [10.136.110.154] (10.136.110.154) by smtp.huawei.com (10.3.19.211) with Microsoft SMTP Server (TLS) id 14.3.498.0; Fri, 22 Jan 2021 08:55:31 +0800 Subject: Re: [f2fs-dev] [PATCH v5 1/2] f2fs: introduce checkpoint=merge mount option To: Daeho Jeong , , , CC: Sungjong Seo , Daeho Jeong References: <20210121134529.1201249-1-daeho43@gmail.com> From: Chao Yu Message-ID: <6e4996f8-fdf0-93dd-8253-9e8f5e6fca06@huawei.com> Date: Fri, 22 Jan 2021 08:55:31 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20210121134529.1201249-1-daeho43@gmail.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [10.136.110.154] X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If there is no update in v5, it will be better to include my Reviewed-by tag, please note that. :) Thanks, On 2021/1/21 21:45, Daeho Jeong wrote: > From: Daeho Jeong > > We've added a new mount option "checkpoint=merge", which creates a > kernel daemon and makes it to merge concurrent checkpoint requests as > much as possible to eliminate redundant checkpoint issues. Plus, we > can eliminate the sluggish issue caused by slow checkpoint operation > when the checkpoint is done in a process context in a cgroup having > low i/o budget and cpu shares. To make this do better, we set the > default i/o priority of the kernel daemon to "3", to give one higher > priority than other kernel threads. The below verification result > explains this. > The basic idea has come fromhttps://opensource.samsung.com. > > [Verification] > Android Pixel Device(ARM64, 7GB RAM, 256GB UFS) > Create two I/O cgroups (fg w/ weight 100, bg w/ wight 20) > Set "strict_guarantees" to "1" in BFQ tunables > > In "fg" cgroup, > - thread A => trigger 1000 checkpoint operations > "for i in `seq 1 1000`; do touch test_dir1/file; fsync test_dir1; > done" > - thread B => gererating async. I/O > "fio --rw=write --numjobs=1 --bs=128k --runtime=3600 --time_based=1 > --filename=test_img --name=test" > > In "bg" cgroup, > - thread C => trigger repeated checkpoint operations > "echo $$ > /dev/blkio/bg/tasks; while true; do touch test_dir2/file; > fsync test_dir2; done" > > We've measured thread A's execution time. > > [ w/o patch ] > Elapsed Time: Avg. 68 seconds > [ w/ patch ] > Elapsed Time: Avg. 48 seconds > > Signed-off-by: Daeho Jeong > Signed-off-by: Sungjong Seo