Messages in this thread | | | Date | Fri, 5 Dec 2008 10:36:34 -0800 | Subject | Re: [RFC PATCH 3/3] kernel tracing prototype | From | Jiaying Zhang <> |
| |
On Fri, Dec 5, 2008 at 7:34 AM, Frank Ch. Eigler <fche@redhat.com> wrote: > Jiaying Zhang <jiayingz@google.com> writes: > >> To better answer the question why we want to implement a new kernel >> tracing prototype, here are some performance results we collected before >> with the tbench benchmark. > > Thanks. > >> - vanilla 2.6.26 kernel, CONFIG_MARKERS=n >> Throughput 759.352 MB/sec 4 >> - markers compiled in, tracing disabled >> Throughput 754.18 MB/sec 4 > > Is your kernel built with -freorder-blocks? This option dramatically > reduces the cost of inactive markers/tracepoints. No. I will try this this flag and let you know if I see any performance difference. Thanks for your suggestion!
> >> - tracing syscall entry/exit, use markers, not logging data to ring_buffer >> Throughput 715.68 MB/sec 4 >> - tracing syscall entry/exit, use markers, logging data to ring_buffer >> Throughput 654.056 MB/sec 4 > > (By the way, how are you doing syscall entry/exit tracing?) The way we trace syscall entry/exit is similar to the approach used in LTTng. When tracing is enabled, a special flag, TIF_KERNEL_TRACE is set so syscall entry and exit call special syscall_trace_enter and syscall_trace_exit that are patched to call trace_mark in our old prototype.
Jiaying
> > > - FChE >
| |