I am just using gcc timetest.c -o timetest

Should be dynamically linked. glibc is 2.5, which is quite old, but I
think this should still work with it, no?

On Tue, Oct 16, 2012 at 2:39 PM, Andy Lutomirski <l...@amacapital.net> wrote:
> On Tue, Oct 16, 2012 at 12:33 PM, wilson self <wsel...@gmail.com> wrote:
>> current_clocksource is tsc.
>>
>> the entire source of the test application:
>> ---
>> #include <stdio.h>
>> #include <stdlib.h>
>> #include <sys/time.h>
>> #include <time.h>
>>
>> int main() {
>>       struct timeval tim;
>>       gettimeofday(&tim, NULL);
>>       printf("%.6lf seconds\n", tim.tv_sec+tim.tv_usec/1000000.0);
>> }
>> ---
>> nothing fancy going on here.
>>
>> thanks for the help.
>
> There's lots of hidden fanciness.  What glibc version are you using
> and how are you linking to glibc?  All but the newest glibc versions
> use the old vsyscall when statically linked.  The newest versions use
> the syscall instead.  If you're dynamically linking, then gettimeofday
> should be okay even with fairly old glibc versions.
>
> (FWIW, glibc maintainership has changed since this was decided.  Feel
> free to bug the new maintainers if you care about statically-linked
> performance.  The only other runtime library I know of that uses the
> vdso or vsyscalls is Go, and the newest versions do the right thing.)
>
> --Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to