[lkml]   [2019]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH v7 00/25] Unify vDSOs across more architectures
On Fri, 21 Jun 2019 10:52:27 +0100
Vincenzo Frascino <> wrote:


> 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.
[ ... ]

Some numbers for the ARM(32) part:

I booted my trusted old Calxeda Midway server (Cortex A-15 cores) and ran
the vdsotest benchmark on it. The results are:
(vdso: times, in nsec/call; n/t: "not tested" (=not implemented))
call 5.2-rc3 5.2-rc3-vdso
clock-gettime-monotonic: 147 142
clock-getres-monotonic: n/t 34
clock-gettime-monotonic-coarse: 90 96
clock-getres-monotonic-coarse: n/t 36
clock-gettime-monotonic-raw: 431 142
clock-getres-monotonic-raw: n/t 35
clock-gettime-tai: 598 150
clock-getres-tai: n/t 34
clock-gettime-boottime: 592 142
clock-getres-boottime: n/t 34
clock-gettime-realtime: 149 142
clock-getres-realtime: n/t 34
clock-gettime-realtime-coarse: 86 96
clock-getres-realtime-coarse: n/t 36
getcpu: n/t n/t
gettimeofday: 133 110

So there are some minor improvements, two minor regressions, some
significant improvements (factor 3-4), and some dramatic improvements
(where we actually gained VDSO support).
Overall a pretty impressive outcome for an "Odd fixes" architecture,
especially as it should reduce the future maintenance burden.


 \ /
  Last update: 2019-06-24 14:52    [W:0.425 / U:7.832 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site