<div dir="ltr">Hi!<div><br></div><div>Maybe you can compare "erlc myfile" with "erl -s compile file myfile"? Or start some other code that does something relevant, with and without the magic arguments.</div><div><br></div><div>I believe that a big part of the savings is due to the differences in code loading, which "init:stop" or "erlang:halt" might not trigger. </div><div><br></div><div>regards,</div><div>/Vlad</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jan 5, 2015 at 10:08 AM, Roger Lipscombe <span dir="ltr"><<a href="mailto:roger@differentpla.net" target="_blank">roger@differentpla.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Loïc has mentioned that any Erlang package manager must be as quick to<br>
start as 'erlc'. So, I figured that I'd take a quick look at how<br>
'erlc' is started.<br>
<br>
The code's in erts/etc/common/erlc.c, and it appears to do this:<br>
<br>
    erlc +sbtu +A0 -noinput -mode minimal -boot start_clean -s<br>
erl_compile compile_cmdline<br>
<br>
For comparison, "erl -noinput -s init stop" takes, according to<br>
/usr/bin/time, on average, 1.15 secs elapsed to exit, versus "erlc<br>
+sbtu +A0 -noinput -mode minimal -boot start_clean -s init stop",<br>
which takes 1.10 secs. This is with a Core i7-3930K @ 3.20GHz, running<br>
from an SSD.<br>
<br>
That's not much of a saving, but I guess it could make enough difference.<br>
<br>
For another data point, I used "-s erlang halt" instead of "-s init<br>
stop", and saw much bigger savings. The average time here was 0.10<br>
secs. From a brief look, I don't know which of these is more relevant.<br>
<br>
It's difficult to get a direct comparison with running the "erlc"<br>
binary, because it doesn't spawn the VM if there's nothing to compile,<br>
and if there is something to compile, it compiles it. So I wouldn't be<br>
comparing like with like.<br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote></div><br></div>