Message ID | 20220308234723.3834941-1-yuzhao@google.com (mailing list archive) |
---|---|
Headers | show |
Series | Multi-Gen LRU Framework | expand |
On Tue, Mar 8, 2022 at 3:48 PM Yu Zhao <yuzhao@google.com> wrote: > > The current page reclaim is too expensive in terms of CPU usage and it > often makes poor choices about what to evict. This patchset offers an > alternative solution that is performant, versatile and > straightforward. So apart from my complaints about asking users config questions that simply should not be asked, I really think this just needs to start getting merged. We've seen several numbers on the upsides, and I don't think we'll see any of the downsides until we try it. And I don't think there is any question that we _shouldn't_ try it, given the numbers posted. But yeah, I certainly _hope_ that all the benchmarking has been done with a unified set of config values, and it's not some kind of bogus "cherry-picked config values for this particular machine" kind of benchmarking that has been done. Because that isn't valid benchmarking - comparing some "tuned for this paeticular machine or load" setup to a default one is just not worth even setting numbers to, and debases the whole value of posting results. Linus
On Tue, Mar 8, 2022 at 5:07 PM Linus Torvalds <torvalds@linux-foundation.org> wrote: > > On Tue, Mar 8, 2022 at 3:48 PM Yu Zhao <yuzhao@google.com> wrote: > > > > The current page reclaim is too expensive in terms of CPU usage and it > > often makes poor choices about what to evict. This patchset offers an > > alternative solution that is performant, versatile and > > straightforward. > > So apart from my complaints about asking users config questions that > simply should not be asked, I really think this just needs to start > getting merged. > > We've seen several numbers on the upsides, and I don't think we'll see > any of the downsides until we try it. And I don't think there is any > question that we _shouldn't_ try it, given the numbers posted. > > But yeah, I certainly _hope_ that all the benchmarking has been done > with a unified set of config values, and it's not some kind of bogus > "cherry-picked config values for this particular machine" kind of > benchmarking that has been done. > > Because that isn't valid benchmarking - comparing some "tuned for this > paeticular machine or load" setup to a default one is just not worth > even setting numbers to, and debases the whole value of posting > results. All benchmarks were done with the default config values. I'm removing those config options now. This sounds self-serving: our data centers want them, so I had to try.
On Tue, Mar 8, 2022 at 4:15 PM Yu Zhao <yuzhao@google.com> wrote: > > This sounds self-serving: our data centers want them, so I had to try. Heh. I'm not opposed to putting them back in, but if/when we merge the multi-gen LRU code, I really want people to be all testing the same thing. I also think that if we put them back in, that should come with (a) performance numbers for the different cases (b) hard guidance of what the numbers should be, and under what circumstances (ie giving the user enough information that he *can* answer the question for his configuration) (c) some thought about perhaps making them possibly more dynamic than a hardcoded build-time value (assuming the numbers show that it's worth doing in the first place, of course) so I think that the support for the concept can/should be left in, but I think that kind of fancy "I want more generations or fewer tiers-per-generation because of XYZ" needs to be a separate issue with more explanation from the initial "This multi-gen LRU gives better performance" merge. Because as-is, I don't think those config options had nearly enough information associated with them to merit them existing. Linus