This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 1/2] benchtests: Memory walking benchmark for memcpy
- From: Carlos O'Donell <carlos at redhat dot com>
- To: Siddhesh Poyarekar <siddhesh at sourceware dot org>, libc-alpha at sourceware dot org
- Date: Thu, 21 Sep 2017 12:29:46 -0600
- Subject: Re: [PATCH 1/2] benchtests: Memory walking benchmark for memcpy
- Authentication-results: sourceware.org; auth=none
- References: <1505756414-12857-1-git-send-email-siddhesh@sourceware.org>
On 09/18/2017 11:40 AM, Siddhesh Poyarekar wrote:
> This benchmark is an attempt to eliminate cache effects from string
> benchmarks. The benchmark walks both ways through a large memory area
> and copies different sizes of memory and alignments one at a time
> instead of looping around in the same memory area. This is a good
> metric to have alongside the other memcpy benchmarks, especially for
> larger sizes where the likelihood of the call being done only once is
> pretty high.
>
> The benchmark is unlike other string benchmarks in that it prints the
> total data rate achieved during a walk across the memory and not the
> time taken per execution.
>
> * benchtests/bench-memcpy-walk.c: New file.
> * benchtests/Makefile (string-benchset): Add it.
I like the idea, and the point that the other benchmark eventually degrades
into measuring L1 performance an interesting insight.
I do not like that it produces total data rate not time taken per execution.
Why the change? If time taken per execution was OK before, why not here?
--
Cheers,
Carlos.