<div dir="ltr">Hello!<br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 8, 2018 at 8:43 PM, pablo platt <span dir="ltr"><<a href="mailto:pablo.platt@gmail.com" target="_blank">pablo.platt@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div>Hello,<br><br></div><div>Updating with my test.<br><br></div>I've been using master in production for two days on 4 servers.<br></div>Each server has 4 vCPUs.<br>Each server handles about 10K UDP packets per second. Approx 1K incoming packets per second and 9K outgoing packets per second.<br><br></div>I didn't see any issues. Seems to work fine.<br></div></div></div></div></blockquote><div> </div><div>That's great! Thanks for testing it! </div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div></div>CPU load in OTP Master 21 increased compared to OTP 20 from 58% to 68%. Does this make sense?<br></div></div></div></blockquote><div><br></div><div>hmm, no not really. I would have expected it to decrease.</div><div><br></div><div>Would you mind helping me to figure out why the CPU usage has gone up?</div><div><br></div><div>To start with I'd like to have a look at the output of</div><div><br></div><div>1> msacc:start(30000), msacc:print().</div><div><br></div><div>for both versions in the Erlang shell. Using this I hope to be able to narrow down where the extra CPU time is being spent.</div><div><br></div><div>Also it would great if you could run a few perf commands to compare the systems.</div><div><br></div><div>Ideally it would be be best if you could recompile beam with the --build-id linker flag. i.e.</div><div><br></div><div>> ./configure LDLAGS="-Wl,--build-id"</div><div><br></div><div>That way it is possible to use "perf archive"[1] to collect the symbols of beam.smp.</div><div><br></div><div>> sudo perf stat -d -p $BEAMPID -- sleep 30 2> stat.log</div><div>> sudo perf record -g -p $BEAMPID -- sleep 30</div><div>> sudo perf archive</div><div>> sudo tar czf $BEAMPID.tar.gz stat.log perf.data.tar.bz2 perf.data</div><div><br></div><div>and send me the tar.gz for OTP-20 and master.</div><div><br></div><div>If you cannot re-compile erts with --build-id, then just do "sudo perf report" and send me a screenshot of the tools shows you.</div><div><br></div><div>If you prefer to this off-list, we can do that as well.</div><div><br></div><div>Lukas</div><div><br></div><div>[1]: If the "perf archive" command does not work (which it doesn't on my machine), just download the script from here: <a href="https://elixir.bootlin.com/linux/v3.18/source/tools/perf/perf-archive.sh">https://elixir.bootlin.com/linux/v3.18/source/tools/perf/perf-archive.sh</a></div></div></div></div>