lkml.org 
[lkml]   [2012]   [Oct]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: VDSO gettimeofday() x86_64 linux 3.2
On 10/16/2012 11:09 AM, wilson self wrote:
> I noticed recently that my get time of day calls are quite a bit
> slower than I would have expected; and it would see that a likely
> cause is that they are not going via vdso, but rather a system call.
>
> In older kernels there was kernel.vsyscall64 parameter to enable them,
> but this seems to be gone in later kernel releases. What config
> option or parameter might I be missing that could cause gettimeofday()
> to use the fallback methods?

That option is gone because it's treated as unconditionally true. What
does /sys/devices/system/clocksource/clocksource0/current_clocksource
say? The usual cause of this problem is a clocksource other than tsc or
hpet. hpet is amazingly slow, though, and arguably the hpet vdso code
could be deleted because the syscall overhead is the least of your
worries if you're using the hpet for timing.

(Also, if you're doing the call yourself instead of using libc, make
sure you're using the vdso and not the old vsyscall. The vsyscall (call
direct to 0xffffffffff600000) is the slowest possible way to read the
time -- it's several times slower than the syscall on my box. This is
mostly intentional.

--Andy


\
 
 \ /
  Last update: 2012-10-16 22:01    [W:1.030 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site