[erlang-questions] Coming Back (maybe improving lists:reverse/1)
Richard A. O'Keefe
Fri Oct 9 03:22:38 CEST 2015
On 9/10/2015, at 2:24 am, Ivan Carmenates Garcia <> wrote:
> Yes I mean the C implementation, because if you do 1 millon of repetances of
> lists:length/1 in Erlang and the same for lists:reverse/1 for the same list,
> lists:length takes 16 milliseconds in my pc and lists:reverse takes 64
This is pretty meaningless. What is the length of the lists?
Here are some results of mine, obtained just now:
% |L| = 100 |L| = 1000
% length/1 in Erlang 0.26 usec 2.56 usec
% reverse/1 in Erlang 0.44 usec 3.32 usec
% length/1 built-in 0.13 usec 1.21 usec
% lists:reverse/1 0.36 usec 3.44 usec
The "in Erlang" entries were obtained with code manually
unrolled by a factor of 4.
The question was "four times *what*", and it appears to be
that the answer was "CPU time". I actually get a little under
a factor of 3 there, but this probably depends on the version
and the machine and a lot of other things.
More information about the erlang-questions