<div>Thanks Jonathan. </div><div><br></div><div>From somewhere, I saw CPU cycles % with LTTng is even 1-2% lower than vanilla. Is it contributed by dynamic branch prediction or other instruction level optimization?</div><div>In that way, the kernel or at least key libraries like libc is kind of re-compiled, right?</div><div><br></div><div>Regards</div><div>Hai</div><div><br>--------------原始邮件--------------<br>发件人:"Jonathan Rajotte-Julien "<jonathan.rajotte-julien@efficios.com>;<br>发送时间:2019年7月16日(星期二) 晚上10:28<br>收件人:"杨海" <hai.yang@magic-shield.com>;<br>抄送:"lttng-dev "<lttng-dev@lists.lttng.org>;<br>主题:Re: [lttng-dev] Pros and Cons of LTTng<br>-----------------------------------<br></div> <div class="mail_content"><div>Hi Hai,<br><br>On Tue, Jul 16, 2019 at 10:19:38AM +0800, 杨海 wrote:<br>> Obviously LTTng has much lower overhead compared to auditd, when we turn on<br>> all system calls and use the same load. Is it true for both user space and<br>> kernel space?<br><br>lttng-ust (userspace tracer) mostly use the same concept as the kerneltracer<br>(per-cpu ring buffers, binary output/CTF, delayed consumption of events, etc.).<br>There is some penalty for doing things in userspace since we need some<br>information from the kernel for each tracepoint hit (e.g the current cpu<br>number). But again most of these hot paths are quite optimized.<br><br>In any case I encourage you to try it out on your workload and lttng fit your<br>needs.<br><br>If you do not find a particular feature in the doc [1], do not hesitate to contact<br>this mailing list for more information.<br><br>>So far I haven't seen any report compare LTTng and auditd,<br>> anyone knows?<br><br>I do not remember any conversation on this topic. After reading a bit on auditd,<br>lttng might be a good replacement depending on your constraints and needs.<br><br>[1] https://lttng.org/docs/v2.10/<br><br>Cheers<br>-- <br>Jonathan Rajotte-Julien<br>EfficiOS<br></div></div>