<div dir="ltr"><div class="gmail_default" style="font-size:small"><font color="#000000" face="verdana, sans-serif">Hi Mathieu, Jonathan,</font></div><div class="gmail_default" style="font-size:small"><font color="#000000" face="verdana, sans-serif"><br></font></div><div class="gmail_default" style="font-size:small"><font color="#000000" face="verdana, sans-serif">I have written python scripts to simulate our requirements.</font></div><div class="gmail_default"><font color="#000000" face="verdana, sans-serif"><a href="https://github.com/vjanandr/sampleP/tree/master/lttng" target="_blank">https://github.com/vjanandr/sampleP/tree/master/lttng</a><br><br></font></div><div class="gmail_default"><font color="#000000" face="verdana, sans-serif">Please refer to the README file for further details about the scripts.</font></div><div class="gmail_default"><font color="#000000" face="verdana, sans-serif"><br></font></div><div class="gmail_default"><font color="#000000" face="verdana, sans-serif">Mathieu, I understand your recommendation to use per UID buffers instead of per PID buffers.</font></div><div class="gmail_default"><font color="#000000" face="verdana, sans-serif">But I dont seem to understand your suggestion to use filters...</font></div><div class="gmail_default"><font color="#000000" face="verdana, sans-serif"><br></font></div><div class="gmail_default"><div style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:16px">>>>></div><div style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:16px">Why ? You can always collect trace data into buffers shared across processes (per-uid buffers)</div><div style="color:rgb(0,0,0);font-family:arial,helvetica,sans-serif;font-size:16px">and filter after the fact.</div><div><<<<<</div><div><br>Did you mean to say write all traces to a file but filter them while reading based on maybe process ID ? </div><span class="im" style="font-family:arial,helvetica,sans-serif;font-size:16px"></span></div><div class="gmail_extra"><font color="#000000" face="verdana, sans-serif"><br clear="all"></font><div><div data-smartmail="gmail_signature"><div dir="ltr"><font face="verdana, sans-serif" color="#000000">Regards,</font><div><font face="verdana, sans-serif" color="#000000">Vijay</font></div></div></div></div>
<br><div class="gmail_quote">On Fri, May 27, 2016 at 1:16 AM, Mathieu Desnoyers <span dir="ltr"><<a href="mailto:mathieu.desnoyers@efficios.com" target="_blank">mathieu.desnoyers@efficios.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div style="font-family:arial,helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)"><span><div><br></div><div><br></div><span>----- On May 26, 2016, at 8:23 AM, Vijay Anand <<a href="mailto:vjanandr85@gmail.com" target="_blank">vjanandr85@gmail.com</a>> wrote:<br></span></span><div><span><blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;padding-left:5px;color:rgb(0,0,0);font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><span style="color:rgb(0,0,0)" color="#000000">Could anyone please let us know how do we go about this ?</span></div><div class="gmail_extra"><span style="color:rgb(0,0,0)" color="#000000"><br clear="all"></span><div><div><div dir="ltr"><span style="color:rgb(0,0,0);font-family:verdana,sans-serif" color="#000000" face="verdana, sans-serif">Regards,</span><div><span style="color:rgb(0,0,0);font-family:verdana,sans-serif" color="#000000" face="verdana, sans-serif">Vijay</span></div></div></div></div><br><div class="gmail_quote">On Tue, May 24, 2016 at 11:31 AM, Vijay Anand <span dir="ltr"><<a href="mailto:vjanandr85@gmail.com" target="_blank">vjanandr85@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div style="font-family:verdana,sans-serif;font-size:small"><span style="color:rgb(0,0,0)" color="#000000">Hello Folks,</span></div><div style="font-family:verdana,sans-serif;font-size:small"><span style="color:rgb(0,0,0)" color="#000000"><br></span></div><div style="font-family:verdana,sans-serif;font-size:small"><span style="color:rgb(0,0,0)" color="#000000">We have been evaluating LTTNG for use in our production systems for user space tracing. We have evaluated most of the features supported by LTTNG and very much see a value add LTTNG brings into our debugging infrastructure.</span></div><div><ul><li><span style="color:rgb(0,0,0)" color="#000000"><span style="font-family:verdana,sans-serif">Our current requirement is to trace Userspace programs running on linux. </span><br></span></li><li><span style="color:rgb(0,0,0)" color="#000000"><span style="font-family:verdana,sans-serif">Each of the linux processes define their own tracepoint providers.</span></span></li></ul></div></div></blockquote></div></div></div></blockquote><div><br></div></span><div>Sounds like a good design.<br></div><span><div><br></div><blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;padding-left:5px;color:rgb(0,0,0);font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><ul><li><span style="color:rgb(0,0,0)" color="#000000"><br></span></li><li><span style="color:rgb(0,0,0)" color="#000000"><span style="font-family:verdana,sans-serif">We would like to trace event histories of each process independently.</span></span></li></ul></div></div></blockquote></div></div></div></blockquote><div><br></div></span><div>Why ? You can always collect trace data into buffers shared across processes (per-uid buffers)</div><div>and filter after the fact.</div><span><div><br></div><blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;padding-left:5px;color:rgb(0,0,0);font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><ul><li><span style="color:rgb(0,0,0)" color="#000000"><br></span></li><li><span style="color:rgb(0,0,0)" color="#000000"><span style="font-family:verdana,sans-serif">We could potentially have 1000s of such processes running simultaneously.</span></span></li></ul></div></div></blockquote></div></div></div></blockquote><div><br></div></span><div>Especially with that many processes, having per-process buffers will degrade your cache<br></div><div>locality.<br></div><span><div><br></div><blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;padding-left:5px;color:rgb(0,0,0);font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><ul><li><span style="color:rgb(0,0,0)" color="#000000"><br></span></li><li><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">We concluded on using a session/channel to trace one tracepoint provider corresponding to a unique process. </span></span></li><ul><li><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">But I understand we could also create one system wide session and use channels to trace each of the providers. Either of the approaches seems to work for us.</span></span></li></ul></ul></div></div></blockquote></div></div></div></blockquote></span><div>Both approach will kill you cache locality with that many process. I don't recommend either<br></div><div>of the two approaches you refer to above. You might want to consider sharing your buffers</div><div>across processes.</div><span><div><br></div><blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;padding-left:5px;color:rgb(0,0,0);font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><ul><li><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">But upon evaluating I see that we could create only 25 active process-sessions and not traces from all the processes are logged.</span></span></li></ul></div></div></blockquote></div></div></div></blockquote></span><div>We will need much more details on your tracing configuration setup (exact list of commands you<br></div><div>issue to create your tracing sessions).<br></div><div><br></div><div>Also please detail what you mean by "<span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">not traces from all the processes are logged".</span></span><br></div><div><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">What commands do you issue, what is the exact setup, and what is the output<br></span></span></div><div><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">you observe (exact listing) which leads you to reach this conclusion.<br></span></span></div><div><br></div><div>Thanks,<br></div><div><br></div><div>Mathieu<br></div><span><div><br></div><blockquote style="border-left-width:2px;border-left-style:solid;border-left-color:rgb(16,16,255);margin-left:5px;padding-left:5px;color:rgb(0,0,0);font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><ul><ul><li><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">Please note I have tried increasing the buffer size and the number of buffers. This doesn't help.</span></span></li><li><span style="font-family:verdana,sans-serif"><span style="color:rgb(0,0,0)" color="#000000">Each of the process trace 52 events at and interval of 1 second each.</span></span></li></ul><li><span style="color:rgb(0,0,0);font-family:verdana,sans-serif" color="#000000" face="verdana, sans-serif">I have evaluated this with lttng in session,live and snapshot modes and I have not been getting favourable.</span></li></ul><span style="color:rgb(0,0,0)" color="#000000"><span style="font-family:verdana,sans-serif">Could you folks share the scale numbers that LTTNG supports, especially when it comes to tracing user space programs ?</span><br></span></div><div style="font-family:verdana,sans-serif;font-size:small"><span style="color:rgb(0,0,0)" color="#000000"><br></span></div><div><div><div dir="ltr"><span style="color:rgb(0,0,0);font-family:verdana,sans-serif" color="#000000" face="verdana, sans-serif">Regards,</span><div><span style="color:rgb(0,0,0);font-family:verdana,sans-serif" color="#000000" face="verdana, sans-serif">Vijay<div style="font-family:verdana,sans-serif;font-size:small;display:inline">​​</div></span></div></div></div></div></div></blockquote></div></div></div><br></blockquote></span></div><span><font color="#888888"><br><div>-- <br></div><div>Mathieu Desnoyers<br>EfficiOS Inc.<br><a href="http://www.efficios.com" target="_blank">http://www.efficios.com</a></div></font></span></div></div></blockquote></div><br></div></div>