In the beginning, mm/gup_benchmark.c supported get_user_pages_fast()
only, but right now, it supports the benchmarking of a couple of
get_user_pages() related calls like:
* get_user_pages_fast()
* get_user_pages()
* pin_user_pages_fast()
* pin_user_pages()
The documentation is confusing and needs update.
Cc: John Hubbard <[email protected]>
Cc: Keith Busch <[email protected]>
Cc: Ira Weiny <[email protected]>
Cc: Kirill A. Shutemov <[email protected]>
Signed-off-by: Barry Song <[email protected]>
---
mm/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/Kconfig b/mm/Kconfig
index 6c974888f86f..f7c9374da7b3 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -831,10 +831,10 @@ config PERCPU_STATS
be used to help understand percpu memory usage.
config GUP_BENCHMARK
- bool "Enable infrastructure for get_user_pages_fast() benchmarking"
+ bool "Enable infrastructure for get_user_pages() and related calls benchmarking"
help
Provides /sys/kernel/debug/gup_benchmark that helps with testing
- performance of get_user_pages_fast().
+ performance of get_user_pages() and related calls.
See tools/testing/selftests/vm/gup_benchmark.c
--
2.27.0
On 8/20/20 8:25 PM, Barry Song wrote:
> In the beginning, mm/gup_benchmark.c supported get_user_pages_fast()
> only, but right now, it supports the benchmarking of a couple of
> get_user_pages() related calls like:
> * get_user_pages_fast()
> * get_user_pages()
> * pin_user_pages_fast()
> * pin_user_pages()
> The documentation is confusing and needs update.
hmmm, it's not that confusing, given that pin_user_pages() and
get_user_pages() use the same underlying get_user_pages()
implementation.
>
> Cc: John Hubbard <[email protected]>
> Cc: Keith Busch <[email protected]>
> Cc: Ira Weiny <[email protected]>
> Cc: Kirill A. Shutemov <[email protected]>
> Signed-off-by: Barry Song <[email protected]>
> ---
> mm/Kconfig | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/mm/Kconfig b/mm/Kconfig
> index 6c974888f86f..f7c9374da7b3 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -831,10 +831,10 @@ config PERCPU_STATS
> be used to help understand percpu memory usage.
>
> config GUP_BENCHMARK
> - bool "Enable infrastructure for get_user_pages_fast() benchmarking"
> + bool "Enable infrastructure for get_user_pages() and related calls benchmarking"
If we really want to go to the trouble of tweaking this, then I'd go with
something more like:
"Enable infrastructure for get_user_pages() and pin_user_pages benchmarking"
...but I don't think it really warrants a patch just yet. *However*, my
judgment is skewed right now, because I'm planning a small patchset to split
up gup_benchmark a little bit, and to add some more testing and take advantage
of parts of it to do a dump_page() test. At which point "related calls" would
make more sense, but then it would be different enough that this patch would
still need changing.
So I'm inclined to just recommend leaving this alone for a bit, but if others
want to put it in, I'm OK with that too.
> help
> Provides /sys/kernel/debug/gup_benchmark that helps with testing
> - performance of get_user_pages_fast().
> + performance of get_user_pages() and related calls.
>
> See tools/testing/selftests/vm/gup_benchmark.c
>
>
thanks,
--
John Hubbard
NVIDIA
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of John Hubbard
> Sent: Friday, August 21, 2020 3:51 PM
> To: Song Bao Hua (Barry Song) <[email protected]>;
> [email protected]; [email protected];
> [email protected]
> Cc: Linuxarm <[email protected]>; [email protected]; Keith
> Busch <[email protected]>; Ira Weiny <[email protected]>; Kirill A .
> Shutemov <[email protected]>
> Subject: Re: [PATCH] mm/gup_benchmark: update the documentation in
> Kconfig
>
> On 8/20/20 8:25 PM, Barry Song wrote:
> > In the beginning, mm/gup_benchmark.c supported get_user_pages_fast()
> > only, but right now, it supports the benchmarking of a couple of
> > get_user_pages() related calls like:
> > * get_user_pages_fast()
> > * get_user_pages()
> > * pin_user_pages_fast()
> > * pin_user_pages()
> > The documentation is confusing and needs update.
>
> hmmm, it's not that confusing, given that pin_user_pages() and
> get_user_pages() use the same underlying get_user_pages()
> implementation.
get_user_pages_fast() is not get_user_pages(). It is a specific function :-)
In the beginning, gup_benchmark was only for get_user_pages_fast():
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/mm/gup_benchmark.c?id=64c349f4ae78
>
> >
> > Cc: John Hubbard <[email protected]>
> > Cc: Keith Busch <[email protected]>
> > Cc: Ira Weiny <[email protected]>
> > Cc: Kirill A. Shutemov <[email protected]>
> > Signed-off-by: Barry Song <[email protected]>
> > ---
> > mm/Kconfig | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/mm/Kconfig b/mm/Kconfig
> > index 6c974888f86f..f7c9374da7b3 100644
> > --- a/mm/Kconfig
> > +++ b/mm/Kconfig
> > @@ -831,10 +831,10 @@ config PERCPU_STATS
> > be used to help understand percpu memory usage.
> >
> > config GUP_BENCHMARK
> > - bool "Enable infrastructure for get_user_pages_fast() benchmarking"
> > + bool "Enable infrastructure for get_user_pages() and related calls
> benchmarking"
>
> If we really want to go to the trouble of tweaking this, then I'd go with
> something more like:
>
> "Enable infrastructure for get_user_pages() and pin_user_pages benchmarking"
>
> ...but I don't think it really warrants a patch just yet. *However*, my
> judgment is skewed right now, because I'm planning a small patchset to split
> up gup_benchmark a little bit, and to add some more testing and take
> advantage
> of parts of it to do a dump_page() test. At which point "related calls" would
> make more sense, but then it would be different enough that this patch would
> still need changing.
Ok. Fair enough. I was copying the "related calls" from:
Documentation/core-api/pin_user_pages.rst
>
> So I'm inclined to just recommend leaving this alone for a bit, but if others
> want to put it in, I'm OK with that too.
>
> > help
> > Provides /sys/kernel/debug/gup_benchmark that helps with testing
> > - performance of get_user_pages_fast().
> > + performance of get_user_pages() and related calls.
> >
> > See tools/testing/selftests/vm/gup_benchmark.c
> >
Thanks
Barry