Re: [PATCH v6 00/19] Unify vDSOs across more architectures

From: Andre Przywara
Date: Thu Jun 20 2019 - 12:27:58 EST


On Thu, 30 May 2019 15:15:12 +0100
Vincenzo Frascino <vincenzo.frascino@xxxxxxx> wrote:

Hi,

> vDSO (virtual dynamic shared object) is a mechanism that the Linux
> kernel provides as an alternative to system calls to reduce where
> possible the costs in terms of cycles.
> [ ... ]
> The porting has been benchmarked and the performance results are
> provided as part of this cover letter.

I can't reveal the absolute numbers here, but vdsotest-bench gives me
quite some performance gain on my board here ("time needed on v6" divided
by "time needed on 5.2-rc1", so smaller percentages are better):
clock-gettime-monotonic: 23 %
clock-gettime-monotonic-raw: 30 %
clock-gettime-tai: 5 %
clock-getres-tai: 5 %
clock-gettime-boottime: 5 %
clock-getres-boottime: 5 %
clock-gettime-realtime: 25 %
gettimeofday: 26 %
The other numbers stayed the same or differed by just 1 ns, which seems to
be within the margin of error, as repeated runs on the same kernel suggest.
The 5% numbers are of course those were we went from a syscall-only to the
newly added arm64 VDSO implementation, but even the other calls improved
by a factor of 3 or more.

Sounds like a strong indicator that this is a good thing to have.

Not sure if "running some benchmark a couple of times on a single machine"
qualifies for this, but I guess it means:

Tested-by: Andre Przywara <andre.przywara@xxxxxxx>

Cheers,
Andre.