<div dir="ltr">As a first step lets focus on the complexity of the operations (ignoring any associated constants or specific time measurements). Just so newcomers to Erlang can validate their assumptions. <div><br></div><div>I will start:</div><div><br></div><div>Adding to the beginning of a list is O(1)</div><div>Adding to the end of a list is O(n)</div><div><br></div><div>Sending a large binary to another node is O(n)</div><div>Sending a large binary to other processes on the same node is O(1)</div><div><br></div><div>etc...</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Sep 16, 2015 at 5:11 PM, Tony Rogvall <span dir="ltr"><<a href="mailto:tony@rogvall.se" target="_blank">tony@rogvall.se</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">On a 64 bit machine that is 60 bits. Just to make things easy.<span class="HOEnZb"><font color="#888888"><div><br></div><div>/Tony</div></font></span><div><div class="h5"><div><div><br><div><div><blockquote type="cite"><div>On 16 sep 2015, at 23:00, Michael Truog <<a href="mailto:mjtruog@gmail.com" target="_blank">mjtruog@gmail.com</a>> wrote:</div><br><div>
<div bgcolor="#FFFFFF" text="#000000">
<div>Sorry, Erlang uses 27bits for integers
before using bignums. Not sure where that is documented.<br>
<br>
On 09/16/2015 01:57 PM, Michael Truog wrote:<br>
</div>
<blockquote type="cite">
<div>I have been using the source code at
<a href="https://github.com/okeuday/erlbench" target="_blank">https://github.com/okeuday/erlbench</a>
for basic micro-benchmarks, mainly for data structure
comparisons. The code is a bit basic, but is able to make sure
the iterations are large enough and are repeated often enough,
to avoid some GC variation that can affect results. Then it may
be possible to make conclusions based on the hardware used for
testing. The concurrency testing would require tests be done in
parallel to determine how the timing result is affected, but a
basic run of low-level operations would provide a starting
point.<br>
<br>
As mentioned elsewhere, making sure you are testing bignums
(anything over 26bits in Erlang, likely different in Python) is
important, and other details that avoid erroneous conclusions.
The influence of concurrency is more important in Erlang, due to
the support provided by Erlang, but latency testing of
concurrency is simpler with higher-level connections to the
Erlang server, rather than low-level testing that is unlikely to
provide realistic GC usage. The hardware being used for the
concurrency testing will then provide more variation and it is
necessary to make sure the hardware is not being throttled due
to excessive heat to avoid skewing the results.<br>
<br>
On 09/16/2015 08:03 AM, Eric des Courtis wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">What is the cost model of all operations in
Erlang 18?
<div><br>
</div>
<div>For example Python has this cost model <a href="http://scripts.mit.edu/%7E6.006/fall07/wiki/index.php?title=Python_Cost_Model" target="_blank">http://scripts.mit.edu/~6.006/fall07/wiki/index.php?title=Python_Cost_Model</a> .</div>
<div><br>
</div>
<div>I either want a link to a single source for this
information or I would like to crowd source the information
here now.</div>
<div><br>
</div>
<div>Thanks for your cooperation.</div>
<div><br>
</div>
<div>Eric des Courtis</div>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
erlang-questions mailing list
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a>
</pre>
</blockquote>
<br>
</blockquote>
<br>
</div>
_______________________________________________<br>erlang-questions mailing list<br><a href="mailto:erlang-questions@erlang.org" target="_blank">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></div></blockquote></div><br></div></div></div></div></div></div></blockquote></div><br></div>