Pattern matching vs. ETS lookups
Serge Aleynikov
serge@REDACTED
Tue Feb 17 13:37:56 CET 2004
Thank you Vance! I couldn't have excpected a better response. :-)
Serge
Vance Shipley wrote:
> Curiosity got the better of me so I ran some benchmarks.
>
> The attached runs four different versions a gen_server.
> The first test is with a full 65K of {module, function}
> tuples of generated atoms. Each test is a loop of 1000
> gen_server:call.
>
> CNT ACC OWN
> list 14605, 2874.423, 11382.772
> gb_trees 14632, 163.546, 578.699
> ets 14631, 148.579, 523.257
> tuple of tuples 14632, 146.690, 512.442
>
>
> This is the output of fprof:analyse. Obviously the
> list version is not effecient. The others seem
> equivalent.
>
> With only 3000 random entries:
>
> list 14647, 221.448, 814.819
> gb_trees 14648, 154.442, 551.877
> ets 14648, 155.908, 558.271
>
>
> The list implentation isn't so bad now. There
> doesn't seem to be much difference in the others.
> I'm now satisfied that my gb_trees method is just
> as effecient as an ets table.
>
> -Vance
More information about the erlang-questions
mailing list