<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.m-6213475157165445228m1616186179029383714m2129104286731852119gmailmsg
        {mso-style-name:m_-6213475157165445228m_1616186179029383714m_2129104286731852119gmail_msg;}
span.m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg
        {mso-style-name:m_-6213475157165445228m_1616186179029383714m_2129104286731852119m_-3967462307026311269m_-8715384078573251649gmail_msg;}
span.m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649m1048118493396790736hoenzb
        {mso-style-name:m_-6213475157165445228m_1616186179029383714m_2129104286731852119m_-3967462307026311269m_-8715384078573251649m_1048118493396790736hoenzb;}
p.m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1, li.m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1, div.m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1
        {mso-style-name:m_-6213475157165445228m_1616186179029383714m_2129104286731852119m_-3967462307026311269m_-8715384078573251649gmail_msg1;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle23
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Might not be related but I had some issues with logs and UI lag when I was using 32 bit python for the server. Went away when I upgraded to 64 bit. - Greg<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> users [mailto:users-bounces@buildbot.net]
<b>On Behalf Of </b>Pierre Tardy<br>
<b>Sent:</b> Wednesday, December 14, 2016 10:48 AM<br>
<b>To:</b> Francesco Di Mizio <francescodimizio@gmail.com><br>
<b>Cc:</b> Buildbot <users@buildbot.net><br>
<b>Subject:</b> Re: [users@bb.net] buildbot CPU usage<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Hi Francesco,<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I have tried to reproduce your issue by doing some stress tests on the buildbot master.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I have been able to run thousands of builds throwing 30k lines of logs each without significant lag in the UI.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">it takes ~2min to compress the whole log with sqlite, but I can always get smooth access to the UI.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I also tried with pg, and it was much faster.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I am setting up a cleaner test environment, and I will be publishing some benchmarks.<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">This week we got this bug about performance issue: <a href="http://trac.buildbot.net/ticket/3654#comment:4">http://trac.buildbot.net/ticket/3654#comment:4</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">This eventually resolved to be a hardware problem on the machine. Could this be something like this?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Pierre<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le mar. 13 déc. 2016 à 01:26, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Pierre i am not using SQLite but pg hosted in an other container on the same box. I'd say the issue isn't which dB engine i am running as it also happens with  MySQL.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> Francesco<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Dec 13, 2016 12:40 AM, "Pierre Tardy" <<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hi Francesco,<o:p></o:p></p>
<div>
<p class="MsoNormal">I would say it is normal that the CPU goes to 100% while the log are being compressed. As soon as anything else is not blocked, for me this is fine.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I can see you are using sqlite. The thing is with sqlite the number of parallel access to the db is restricted to one by default in order to protect against weird parallel behaviour we got with sqlite.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I think this explains your behaviour.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I would recommend as an easy fix to switch to pg or mysql. I'll try to think of some workarounds like compressing the log only when there is a low load average. This is already something that we though about with my teammates. Log compression
 is important, but not urgent, so this is fine to delay until there is not so much to do. <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Pierre<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le lun. 12 déc. 2016 à 12:40, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hey Pierre,<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">first of all thanks for taking a look. I never ever have more than 9-10 builds going on at the same time. Like I said many times the system can happily be sitting on a nice 10-15% CPU usage when even 8 builds are running, but the CPU spikes
 can happen at any time with any number of builds going on. Things seem to go worse when the system runs for a few days with no reboot. Just now I had 7 builds running and the cpu keeps oscillating between 10% and 120%,  now it's contantly over 100%. I wonder
 if we can find a way for you to access the system so you can take a look yourself (of course if you are fine with it)?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I will def be looking at multimaster in the future, just have no time atm.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks again,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> Francesco<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Mon, Dec 12, 2016 at 11:18 AM, Pierre Tardy <span class="m-6213475157165445228m1616186179029383714m2129104286731852119gmailmsg">
<<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>></span> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hi Francesco,<o:p></o:p></p>
<div>
<p class="MsoNormal">I finally got the time to look at your profile.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I dont see anything other than normal load. Buildbot is hardworking at compressing the log in the db, managing the build and steps, etc.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">How many build in parallel do you have for your master? Maybe its time to start thinking about multimaster.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Pierre<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le lun. 28 nov. 2016 à 11:30, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Reviving this old thread. According to things that were said on this thread, I reduced as much as I could all the logs produced by all steps. Bigger has now 300 lines.<o:p></o:p></p>
<div>
<p class="MsoNormal">Despite that I am still seeing cpu spiked. I managed to grab a hopefully useful json from the profiler which you'll find attached. Toards the end you can clearly see the load goes through the roof.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">If anybody could take a look I'd really appreciate!<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Francesco<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Fri, Aug 26, 2016 at 6:06 PM, Neil Gilmore <span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg">
<<a href="mailto:ngilmore@grammatech.com" target="_blank">ngilmore@grammatech.com</a>></span> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hi Pierre,<br>
<br>
Well, my previous message was really saying that I think buildbot can handle logs a lot bigger then 12K lines.<br>
<br>
It seems unlikely that it's stuck on log compression. The step says it's been running for 9.5 hours, and previous runs of the entire build have durations in the 1-3 hour range. The particular step is a ShellCommand that actually does the build. The place where
 the log stops is during an svn up operation.<br>
<br>
I don't find any exceptions in the log for this, though that's not definitive (current number of log files is 122, and sometimes finding things is tricky). I do see the build cancellation in the log, and it also shows up in the UI.<br>
<br>
I'm betting on a lost deferred. So far, I've never seen an exception relating to that.<br>
<br>
On the bright side, this seems to be the only worker whose builders are stuck (some of the rest are waiting for locks, which this build has). Usually, there's more.<span style="color:#888888"><br>
<br>
<span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649m1048118493396790736hoenzb">Neil Gilmore</span><br>
<span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649m1048118493396790736hoenzb"><a href="http://grammatech.com" target="_blank">grammatech.com</a></span></span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On 8/26/2016 10:35 AM, Pierre Tardy wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Hum, <o:p></o:p></p>
<div>
<p class="MsoNormal">It might not be stuck, actually, but just spending very long time to compress the log.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">In theory, the log compression is not waited for, though.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Note that if you stop a build that is waiting for a lost deferred, this will have no effect as you describe.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">You got absolutly no exception in twisted.log?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Pierre<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le ven. 26 août 2016 à 17:06, Neil Gilmore <<a href="mailto:ngilmore@grammatech.com" target="_blank">ngilmore@grammatech.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">I'm currently looking at a step with 3 logs:<br>
81531 lines<br>
489285 lines<br>
489311 lines<br>
<br>
An earlier successful run would have that first log at 244080 lines.<br>
<br>
This particular build is stuck, though. :( (which is why I'm looking at it.) (A bit off-topic, but I tried stopping it. The last step is marked cancelled, but that's the only effect.)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><br>
<br>
Neil Gilmore<br>
<a href="http://grammatech.com" target="_blank">grammatech.com</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On 8/26/2016 6:25 AM, Pierre Tardy wrote:<o:p></o:p></p>
</div>
</div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">The ram looks like sufficient, it might be a good test to try and increase the number of cpu for that VM.
<o:p></o:p></p>
<div>
<p class="MsoNormal">In your trace, I can see the use of up to 7 threads at the same time, so you might gain by going 8 CPUs<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Also, make sure that your VM host is not overbooked. In my experience of using VMware VMs provided by IT, overbooking has been a source of inexplicable performance issues.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">12k lines is a lot, but buildbot shall support this kind of load without issue.<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le ven. 26 août 2016 à 12:05, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">It's a vmware virtual machine with 4 GIGs RAM and 4 CPUs@3Ghz. It runs, among other marginal things, 2 docker containers - one for the buildbot and one for the postgres db.
<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The most beefy logs have around 12K lines. Is it too much?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Also some other logs are read from the worker's filesystem and added as additional logs.<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Fri, Aug 26, 2016 at 11:51 AM, Pierre Tardy <span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg">
<<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>></span> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Cool! <o:p></o:p></p>
<div>
<p class="MsoNormal">I can indeed see 3 spikes.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Looks related to logs and logs compression.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">What is the HW spec of your master machine?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">How much log does your build generate?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#888888"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#888888">Pierre<o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le ven. 26 août 2016 à 11:42, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Pierre, <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I enabled it, waited 1 min and saw the spike, then stopped after a few secs. Attached the json.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Awesome tool btw, work wonders!<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Thu, Aug 25, 2016 at 1:14 PM, Pierre Tardy <span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg">
<<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>></span> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">You can try to hit the button in the morning with a two hours gather period, and hope that you see the spike during that period..
<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le jeu. 25 août 2016 à 12:17, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Thanks a lot! Pierre I will def will give it a shot. I am not sure I'll be able to smash that 'start recording' button as the UI isusuallystuck when the CPU spikes. Updates to come!<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Thu, Aug 25, 2016 at 10:45 AM, Pierre Tardy <span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg">
<<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>></span> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hi Francesco, <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I spent some time in order to implement a profiler plugin for buildbot<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">You can give it a look, and send your profile.json file if you need more analysis from me.<o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><a href="https://github.com/tardyp/buildbot_profiler" target="_blank">https://github.com/tardyp/buildbot_profiler</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Pierre<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le mer. 24 août 2016 à 22:43, Francesco Di Mizio <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">I've tried and it's not an easy task because of my Win into Vagrant into Docker setup. 
<o:p></o:p></p>
<div>
<p class="MsoNormal">I'll try again soon when I get a Linux  box!<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Fri, Aug 19, 2016 at 5:54 PM, Vasily <span class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg">
<<a href="mailto:just.one.man@yandex.ru" target="_blank">just.one.man@yandex.ru</a>></span> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1">
Umm, no. VTune has Python support starting 2017 Beta, and, well, it was my team (at Intel) work actually :-)<o:p></o:p></p>
<p class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1">
P.S. I'm from Intel, too. <o:p></o:p></p>
<p class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1">
Thanks, <br>
Vasily<o:p></o:p></p>
<div>
<p class="MsoNormal">19 авг. 2016 г. 18:17 пользователь "Francesco Di Mizio" <<a href="mailto:francescodimizio@gmail.com" target="_blank">francescodimizio@gmail.com</a>> написал:
<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1">
I had thought you were making fun of Intel somehow ;)<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Aug 19, 2016 5:07 PM, "Pierre Tardy" <<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">ahah <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I though this was a taunt on me being employed by Intel.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I actually had mitigated experience with vtune few years ago, and didn't know they had python support until then.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Being an opensource guy, I usually neglegate to look at proprietary stuff.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#888888"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#888888">Pierre<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">Le ven. 19 août 2016 à 12:18, Vasily <<a href="mailto:just.one.man@yandex.ru" target="_blank">just.one.man@yandex.ru</a>> a écrit :<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1">
I'm again suggesting to look into Python profiling capabilities of Intel® VTune™ Amplifier. It could run statistical profiling for a long time and display CPU usage over time, so the developer can look at specific time range where CPU usage was too high and
 see which functions were executed. <o:p></o:p></p>
<p class="m-6213475157165445228m1616186179029383714m2129104286731852119m-3967462307026311269m-8715384078573251649gmailmsg1">
Thanks, <br>
Vasily<o:p></o:p></p>
<div>
<p class="MsoNormal">19 авг. 2016 г. 11:57 пользователь "Pierre Tardy" <<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>> написал:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hi Francesco, <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Your described setup looks sane to me.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The problems we are trying to catch are cpu spikes, as far as I understand, which does not happen for very long, but are very annoying for users, as it is blocking the reactor.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">This problem is not easy to see in the profile you sent, as this profile is over long time, so we see the average of each method during the day and not the spikes.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">What would really be needed is a on-demand profiler which would detect cpu spikes and only log the stack traces during those times.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Here is a nice blog pst explaining why statistic profiling is cool and easy to implement in python.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><a href="https://nylas.com/blog/performance" target="_blank">https://nylas.com/blog/performance</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">For 0.9.1 I want to concentrate on scalability, and write a debugging ui plugin based on those ideas (and probably code)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">That would be great if your team can help on that matter.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Pierre<o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
</blockquote>
</div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre>_______________________________________________<o:p></o:p></pre>
<pre>users mailing list<o:p></o:p></pre>
<pre><a href="mailto:users@buildbot.net" target="_blank">users@buildbot.net</a><o:p></o:p></pre>
<pre><a href="https://lists.buildbot.net/mailman/listinfo/users" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a><o:p></o:p></pre>
</blockquote>
</div>
<p class="MsoNormal">_______________________________________________<br>
users mailing list<br>
<a href="mailto:users@buildbot.net" target="_blank">users@buildbot.net</a><br>
<a href="https://lists.buildbot.net/mailman/listinfo/users" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a><o:p></o:p></p>
</blockquote>
</div>
</blockquote>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
<p class="MsoNormal"><br>
_______________________________________________<br>
users mailing list<br>
<a href="mailto:users@buildbot.net" target="_blank">users@buildbot.net</a><br>
<a href="https://lists.buildbot.net/mailman/listinfo/users" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</blockquote>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</body>
</html>