From: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: Linus Torvalds <torvalds@linuxfoundation.org>,
David Laight <David.Laight@aculab.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Matthew Wilcox (Oracle)" <willy@infradead.org>,
Christoph Hellwig <hch@infradead.org>,
Andrew Morton <akpm@linux-foundation.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Dan Carpenter <dan.carpenter@linaro.org>,
Arnd Bergmann <arnd@kernel.org>,
"Jason@zx2c4.com" <Jason@zx2c4.com>,
"pedro.falcato@gmail.com" <pedro.falcato@gmail.com>,
Mateusz Guzik <mjguzik@gmail.com>,
"linux-mm@kvack.org" <linux-mm@kvack.org>
Subject: Re: [PATCH 0/7] minmax: reduce compilation time
Date: Sat, 27 Jul 2024 17:41:31 +0100 [thread overview]
Message-ID: <969b864a-a27a-4bdc-ae1e-e6132dfbfca4@lucifer.local> (raw)
In-Reply-To: <0c5b8177-3602-4840-8956-6196a6175c04@kernel.dk>
On Sat, Jul 27, 2024 at 10:36:30AM GMT, Jens Axboe wrote:
> On 7/27/24 10:31 AM, Lorenzo Stoakes wrote:
[snip]
> > I tried this patch, doesn't seem to make a huge difference, going from
> > 3,958,564 bytes with longest line of 82 kB to 3,943,824 bytes with a
> > longest line of 77kB.
> >
> > It seems that the .bv_len = ... expansion is what's doing it, so I tried
> > patching mp_bvec_iter_len() as well to do a silly ?: thing (sorry), which
> > takes us down to 3,880,309 with longest line of 20kB.
>
> Right, I did compile it after the fact and applied the same thing to
> mp_bvec_iter_len().
Ah cool :)
>
> > This is starting to feel like whack-a-mole isn't it? I looked at the next
> > longest line, which originates from include/linux/pid_namespace.h believe
> > it or not where some compiler cleverness + a loop is resulting in _another_
> > combinatorial explosion.
>
> Oh it's certainly whack-a-mole, doesn't mean it's not worth doing for
> the low hanging stuff :-)
Yeah I'd say getting down to 20 or 16kB is probably worth it, hardly
difficult.
I guess I resent the fact we're being forced to do this because of insanity
in the macros.. but if it's obvious and not going to cause regressions in
existing code then no harm.
>
> > Patch attached including Jens's change + mine.
>
> bvec side matches what I have here, fwiw, except I also did
> mp_bvec_iter_len(). Didn't see big expansion there, but might as well
> keep them consistent.
Makes sense, am happy to give R-b tag for this patch if you want to put it
forward? Not sure if Linus is minded to just pull something for this now?
If we're whack-a-moleing may as well sort the drivers I found in my
allmodconfig too obviously as some hilariously low-hanging fruit there...
>
> --
> Jens Axboe
>
next prev parent reply other threads:[~2024-07-27 16:42 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-24 14:26 David Laight
2024-07-24 14:28 ` [PATCH 1/7] minmax: Put all the clamp() definitions together David Laight
2024-07-24 14:29 ` [PATCH 2/7] minmax: Use _Static_assert() instead of static_assert() David Laight
2024-07-24 14:29 ` [PATCH 3/7] compiler.h: Add __if_constexpr(expr, if_const, if_not_const) David Laight
2024-07-24 17:32 ` Arnd Bergmann
2024-07-25 9:12 ` David Laight
2024-07-24 19:48 ` Linus Torvalds
2024-07-25 8:45 ` David Laight
2024-07-24 14:30 ` [PATCH 4/7] minmax: Simplify signedness check David Laight
2024-07-24 16:48 ` Arnd Bergmann
2024-07-24 20:02 ` Linus Torvalds
2024-07-25 9:00 ` David Laight
2024-07-25 17:02 ` Linus Torvalds
2024-07-26 9:43 ` Lorenzo Stoakes
2024-07-26 12:57 ` David Laight
2024-07-26 13:27 ` Lorenzo Stoakes
2024-07-25 13:24 ` kernel test robot
2024-07-25 16:39 ` David Laight
2024-07-24 14:31 ` [PATCH 5/7] minmax: Factor out the zero-extension logic from umin/umax David Laight
2024-07-24 14:32 ` [PATCH 6/7] minmax: Optimise _Static_assert() check in clamp() David Laight
2024-07-24 14:33 ` [PATCH 7/7] minmax: minmax: Add __types_ok3() and optimise defines with 3 arguments David Laight
2024-07-24 17:03 ` Arnd Bergmann
2024-07-25 9:07 ` David Laight
2024-07-24 19:34 ` [PATCH 0/7] minmax: reduce compilation time Lorenzo Stoakes
2024-07-24 19:52 ` Linus Torvalds
2024-07-26 18:12 ` Lorenzo Stoakes
2024-07-26 18:24 ` Linus Torvalds
2024-07-26 18:56 ` Lorenzo Stoakes
2024-07-26 19:21 ` Lorenzo Stoakes
2024-07-26 21:36 ` Linus Torvalds
2024-07-26 21:46 ` Jens Axboe
2024-07-26 22:48 ` Linus Torvalds
2024-07-27 15:30 ` Jens Axboe
2024-07-27 15:38 ` Jens Axboe
2024-07-27 16:31 ` Lorenzo Stoakes
2024-07-27 16:36 ` Jens Axboe
2024-07-27 16:41 ` Lorenzo Stoakes [this message]
2024-07-27 16:52 ` Jens Axboe
2024-07-27 16:56 ` Lorenzo Stoakes
2024-07-28 11:32 ` David Laight
2024-07-27 4:13 ` Linus Torvalds
2024-07-27 4:14 ` Linus Torvalds
2024-07-27 8:08 ` David Laight
2024-07-27 18:58 ` Lorenzo Stoakes
2024-07-27 19:21 ` Linus Torvalds
2024-07-28 11:17 ` David Laight
2024-07-28 13:07 ` Lorenzo Stoakes
2024-07-27 17:33 ` Matthew Wilcox
2024-07-27 18:16 ` Linus Torvalds
2024-07-27 8:07 ` Lorenzo Stoakes
2024-07-27 16:26 ` Linus Torvalds
2024-07-27 18:44 ` Lorenzo Stoakes
2024-07-30 4:10 ` Linus Torvalds
2024-07-30 10:36 ` Arnd Bergmann
2024-07-28 17:57 ` Geert Uytterhoeven
2024-07-28 18:43 ` Lorenzo Stoakes
2024-07-26 21:32 ` David Laight
2024-07-26 21:38 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=969b864a-a27a-4bdc-ae1e-e6132dfbfca4@lucifer.local \
--to=lorenzo.stoakes@oracle.com \
--cc=David.Laight@aculab.com \
--cc=Jason@zx2c4.com \
--cc=akpm@linux-foundation.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=arnd@kernel.org \
--cc=axboe@kernel.dk \
--cc=dan.carpenter@linaro.org \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mjguzik@gmail.com \
--cc=pedro.falcato@gmail.com \
--cc=torvalds@linuxfoundation.org \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox