Messages in this thread | | | Date | Mon, 12 Dec 2011 15:20:17 -0800 | From | Arun Sharma <> | Subject | Re: [PATCH 2/2] Add a thread cpu time implementation to vDSO |
| |
On 12/12/11 3:09 PM, john stultz wrote: > On Mon, 2011-12-12 at 11:36 -0800, Arun Sharma wrote: >> From: Kumar Sundararajan<kumar@fb.com> >> >> This primarily speeds up clock_gettime(CLOCK_THREAD_CPUTIME_ID, ..) >> via a new vsyscall. We also add a direct vsyscall that returns >> time in ns (RFC: the direct vsyscall doesn't have a corresponding >> regular syscall, although clock_gettime() is pretty close). > > I'm still not super psyched about providing a vdso-only API. > > If a nanosecond interface like thread_cpu_time() is actually a big win > over clock_gettime(CLOCK_THREAD_CPUTIME,...) it seems it should have its > own syscall as well, no?
The win is relatively small when we're dealing with syscalls. But with vsyscalls, it starts showing up in micro benchmarks.
Happy to post patches for regular syscalls (assuming I can get them allocated :).
> > Possibly something like clock_gettime_ns(), which would return the same > values as clock_gettime() but in nanoseconds rather then a timespec? >
If we're doing non-POSIXy things there, how about allocating one syscall per clock instead of multiplexing them through a single syscall?
This would be a nice to have (clock_gettime_ns() should get us most of the perf benefit).
-Arun
| |