[lttng-dev] HugePages shared memory support in LLTng
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Thu Jul 25 11:40:23 EDT 2019
----- On Jul 23, 2019, at 9:27 PM, Jonathan Rajotte jonathan.rajotte-julien at efficios.com wrote:
> CC'ing the mailing list back.
>
> On Tue, Jul 23, 2019 at 03:58:09PM -0400, Yiteng Guo wrote:
>> Hi Jonathan,
>>
>> Thank you for the patch! It is really helpful.
>
> Were you able to observe a positive impact?
>
> This is something we might be interested in upstreaming if we have good
> feedback.
>
>>
>> Is there any disadvantage of per-pid buffering? I don't want to have
>> processes interfere with each other so I choose per-pid buffering.
>
> The main downside is that each registered applications will get their own
> subbuffers resulting in a lot of memory usage depending on your session
> configuration. This can get out of hand quickly, especially on systems withs
> lots
> of cores and unknown number of instrumented applications.
I can add 2 extra cents (or actually a few more) to this answer:
There are a few reasons for using per-uid buffers over per-pid:
- Lower memory consumption for use-cases with many processes,
- Faster process launch time: no need to allocate buffers for each process.
Useful for use-cases with short-lived processes.
- Keep a flight recorder "snapshot" available for all processes, including
those which recently exited. Indeed, the per-pid buffers don't stay around
for snapshot after a process exits or is killed.
There are however a few advantages for per-pid buffers:
- Isolation: if one PID generates corrupted trace data, it does not interfere
with other PIDs buffers,
- If one PID is killed between reserve and commit, it does not make that specific
per-cpu ring buffer unusable for the rest of the tracing session lifetime.
Hoping this information helps making the right choice for your deployment!
Thanks,
Mathieu
>
> If you completely control the runtime, for example when doing benchmarking or
> simple analysis, feel free to use what make more sense to you as long as you
> understand the pitfalls of each mode.
>
> Cheers
>
> --
> Jonathan Rajotte-Julien
> EfficiOS
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list