From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2A3B4C2BB3F for ; Wed, 15 Nov 2023 16:28:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7A8676B0381; Wed, 15 Nov 2023 11:28:47 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 731726B0382; Wed, 15 Nov 2023 11:28:47 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5CEAB6B0383; Wed, 15 Nov 2023 11:28:47 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 47D126B0381 for ; Wed, 15 Nov 2023 11:28:47 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 06B1F406B0 for ; Wed, 15 Nov 2023 16:28:47 +0000 (UTC) X-FDA: 81460722294.01.7C1FC6D Received: from mail-lf1-f42.google.com (mail-lf1-f42.google.com [209.85.167.42]) by imf14.hostedemail.com (Postfix) with ESMTP id 037F110000C for ; Wed, 15 Nov 2023 16:28:43 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=BE76lZmw; spf=pass (imf14.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.42 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700065724; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=jsVx/Q3YhVxHOvs8227jfNskpZuE2YqOrJ9wOZRuNEs=; b=1An8ynypLBvGI+yKPWF7nLMn1UGv2fsvZfrFdwWGiprjqU0d6273UxM5kZ1r1kgFDgoQLn VRCYLWT42gzWY7lj1S++IZgqcBfM1heYh2K2/xTnrsbF5Ux7171dRFZ4dAtAXqlUmUTiYS yfGPDyg6/6cHwWD9pLHk0VucKqTChEo= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=BE76lZmw; spf=pass (imf14.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.42 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700065724; a=rsa-sha256; cv=none; b=xVJ9mAcuVfI9aJxawHKg8YJ9LgECBfeu1TGY6sPDdFCCc7kPwMGsKhF4dSd4Uv0xVKSQdA 621iyX0jZUdVrQCNl7EnRc853HSaVRojEc0SrvIkLpPAgx6+s1amJBkMAAPbn+OZdSDei3 1THQnJCOwKLKgZc8Yf9/mTjmqThILz8= Received: by mail-lf1-f42.google.com with SMTP id 2adb3069b0e04-507ad511315so9993357e87.0 for ; Wed, 15 Nov 2023 08:28:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1700065722; x=1700670522; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=jsVx/Q3YhVxHOvs8227jfNskpZuE2YqOrJ9wOZRuNEs=; b=BE76lZmwA/dkM4muAs36Zmte+TfioFQm+fTINIaKiN6BoRjKsaxp3L3fQr4QlaInT1 Gg8O252qMOYqEhpQSXZcftRoQLirK1Gr2o7qql0DcWbgBFB2lGKVL3ISlneStObjYvwK NmZr7/sPvya3yC8UT6MCdQfDu7GpADZKa7SvY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700065722; x=1700670522; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=jsVx/Q3YhVxHOvs8227jfNskpZuE2YqOrJ9wOZRuNEs=; b=jbVLRlTYIyDikchxDh6W4xr//leQ7jNGVKKYnOfKDFvVWf+XxOBpJ9LpfOwTRRK1F8 WX+Ax2ofvGzgGroNfZnvK+cY8XZ0iV/WauPYPwyG+K8rfeW4NFNBmHDzLbaC1abVnq7t jSYxJLzke2Gfm51mHNjzvKhWq1XC9vEqPt771kLnloFuL91LFTR+mVCu6A8prXMR4T+q VdHosPKeOaJy9tyUFpoi0o33O1taAwoKbK46xfjHp9ASQIOBUAK8RqmmVPYlDJdAuTLA TqFGGMJr+u7zjCaoVk305cf/ckwJDUWgVaY8f0mHdUSr/UC0kasSuIFNiZcbkxAAUP9b iqTA== X-Gm-Message-State: AOJu0YzAd8QLIoQrF2KADL27aiaYPAngm0PmZ9KWDOuGQsQ4fWMm+yE1 3rZ6tKPkuLQsF6qlMYXG8mwcmz2WhK3Sztk7pAyg+Vzv X-Google-Smtp-Source: AGHT+IHvBLC0o/Ao9i4ApQB0fSLY59WCGdF0cy8fcBKIyVswl33DsOp3cBa1V5JHp/B4M1fA5ABbDA== X-Received: by 2002:a19:ad4c:0:b0:509:cbfa:1c31 with SMTP id s12-20020a19ad4c000000b00509cbfa1c31mr9036340lfd.40.1700065722063; Wed, 15 Nov 2023 08:28:42 -0800 (PST) Received: from mail-lj1-f179.google.com (mail-lj1-f179.google.com. [209.85.208.179]) by smtp.gmail.com with ESMTPSA id 8-20020ac25f08000000b00503555aa934sm1694108lfq.11.2023.11.15.08.28.40 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 15 Nov 2023 08:28:40 -0800 (PST) Received: by mail-lj1-f179.google.com with SMTP id 38308e7fff4ca-2c6efcef4eeso93186771fa.1 for ; Wed, 15 Nov 2023 08:28:40 -0800 (PST) X-Received: by 2002:a05:6512:12cf:b0:503:3781:ac32 with SMTP id p15-20020a05651212cf00b005033781ac32mr12684125lfg.41.1700065720301; Wed, 15 Nov 2023 08:28:40 -0800 (PST) MIME-Version: 1.0 References: <20231115154946.3933808-1-dhowells@redhat.com> <20231115154946.3933808-9-dhowells@redhat.com> In-Reply-To: <20231115154946.3933808-9-dhowells@redhat.com> From: Linus Torvalds Date: Wed, 15 Nov 2023 11:28:22 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 08/10] iov_iter: Add benchmarking kunit tests To: David Howells Cc: Christian Brauner , Jens Axboe , Al Viro , Christoph Hellwig , David Laight , Matthew Wilcox , Brendan Higgins , David Gow , linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-mm@kvack.org, netdev@vger.kernel.org, linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com, linux-kernel@vger.kernel.org, Christian Brauner , David Hildenbrand , John Hubbard Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 037F110000C X-Rspam-User: X-Stat-Signature: 65dtour6yef9z491fmoxyqyz14qk1drk X-Rspamd-Server: rspam01 X-HE-Tag: 1700065723-669511 X-HE-Meta: U2FsdGVkX19D5uCdCmeJv7vjPsaD43DsWN54a8z/4PilPtsYWLIuKunNI2DB1nJ5XdrrnwgOpHJubrcup30UGm64ZOIKGdBGogzG06ekcmrYWhJAN5kd3CrrWbHM0n++WMC/rAZMYbEcld60mA6RftlpQCnMhGCHCfgtnSNAniB+qfFj9AgMNLitaTIltVs9HK9LkdwR5xJJ9IV4Yb2rQ+vRSEj2G3sw49qpLOL+KNalVBnTo8mvyXwL6Zt0EJsQiAISAQji0rQ6qZfBz01eDPC/dQ+90uJwGRcRpCRBFTA3O5O+RCFkYy52v3sxSFufl3t81lQ8AcJ2P6nFemSC5T7Eg4HI0SjE3UWoBk8HtQkACb7aq5TlJbmifuMKfjsTRshb1KxI6bi6YeTvV6P1FTVswmkAUhJ1sdA/DFRJUOTIAffJj//Y1GJSNZhDWd3eFsv76eMFvC2sHVXtgohA53hLQXKQHBlf+Foy/jdxxg5QBG/L7Bbw0ZAFbC2ZI0cNG9DuvkN9ptFuBGlsifajNJ6JABXGxb8Vp0GJ90jwtHKwvZXl8fPvNXG4fWtv6KVEDRNpYuQaSU8v0l6uFC+3E8xx/4my4Y9yVLjmMZAlszw2CJCWUT/ApW7Z6w+vIaG/a/kYjcsI967JlUizw7y5u10j5Pe7VsRxpGSa/QZvy991f/Mpe6m+2N5k+wYmrM2QnViw9VPtpODZAPbLopdLKHDL2XBt5o9mU/KdWz84hcUitDKWgiVHoF/4FKZ+5ywVgiw42XAAcR8NX38lbAMWacO0j3q1o8wzfu2dwx7wkMWUJTESTmdzFy4aT/afPiRVqg1fEpAPlLpziA59bQu7vY6WUZFw2SjZj1Jdh0Ye/UoPxFA6tUKWas01WBvqHvY7VuLviLuJuTmr8KVQovfIrK+0WSjO3YokmiJPcydkIlyGGTDmucSPat1WciRpwwIjKlKWLNNkerJA9NCH1Z7 e5fjIpOh UM3SUvNmwaKhcSB0dnkP0s+4MtwgGnwQxbtOQYJYLV48idrvzcg6mt8qpDnwWNeKUQXhgkKz7TAZgFe4RQh8AIg0ZYYg6kWAXoKwebFeZ9SxTKM4AOUyMv8pei4u4S4DMPvjYN+dj1xGxduhiwGWH+M8eiaR/9hSGVbL9DKpePbSIGST7Zetdyj389bNZ5GjGe6q4p3etbI/vjaEZw9oN/9bxLLZch3k0aCNY9f8z3pJzI/PvtdrVYDUkmlZjbwgFKo6rvpuWvP11HsR0cE20mtxny9VcHoMsN06IfX9Jw2lwbcLh1Dei118ORoZ6gOTD2E2RiwnE+P9DJzxH+bCQAaketZNj4k6bGE/iQih3MdOHlMCOwKnzPV/O5gKv0gz+Gy5QVUFoxv8yKul6e1tHcacMNPD7MrNmuB1ysuM8vIpm2iN1bhwXRvK+LVg44mMIfSvpQX9tFlnY54IvFNydUzcPPetO0WeOXcQD7UMx6badWz9jUepilLxnMksiDfdeT0VytcaZSHLkdZ25EQhwO7BB2+T2GShOsOxJJj9fjGHdN0RsMgtonfVi2XOVnYHUfs72 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, 15 Nov 2023 at 10:50, David Howells wrote: > > Add kunit tests to benchmark 256MiB copies to a KVEC iterator, a BVEC > iterator, an XARRAY iterator and to a loop that allocates 256-page BVECs > and fills them in (similar to a maximal bio struct being set up). I see *zero* advantage of doing this in the kernel as opposed to doing this benchmarking in user space. If you cannot see the performance difference due to some user space interface costs, then the performance difference doesn't matter. Yes, some of the cases may be harder to trigger than others. iov_iter_xarray() isn't as common an op as ubuf/iovec/etc, but that either means that it doesn't matter enough, or that maybe some more filesystems could be taught to use it for splice or whatever. Particularly for something like different versions of memcpy(), this whole benchmarking would want (a) profiles (b) be run on many different machines (c) be run repeatedly to get some idea of variance and all of those only get *harder* to do with Kunit tests. In user space? Just run the damn binary (ok, to get profiles you then have to make sure you have the proper permission setup to get the kernel profiles too, but a echo 1 > /proc/sys/kernel/perf_event_paranoid as root will do that for you without you having to then do the actual profiling run as root) Linus