[erlang-questions] clarify: why bit syntax so slow + benchmark code
Mateusz Berezecki
mateuszb@REDACTED
Fri Nov 16 23:20:15 CET 2007
On Nov 16, 2007, at 4:09 PM, Per Gustafsson wrote:
>>
>
> It is slow because for each iteration a two sub-binary structure
> (about 5 words) is allocated. This will be optimized in the next
> release of Erlang/OTP, but your code is sub optimal anyway, if you
> want good performance you should write:
>
> test1(<<>>) -> done;
> test1(<<_A, Rest/binary>>) ->
> test1(Rest).
>
> That is, you should not first pattern match and create a sub-binary
> and then match against that one.
It was written that way to show that some calculations are done on that
matched value later. Generally speaking
I'm having a trouble parsing a stream of data
where each control frame is single byte and I have no knowledge of
the stream unless I parse that single byte (i.e. and ~3-4 bytes after
it - they vary depending
on that first single byte).
I'm curious, can erlang achieve good performance with that kind of
stream data filtering?
Mateusz Berezecki
More information about the erlang-questions
mailing list