Michael Truog (okeuday) wrote,
Michael Truog

Erlang Module Benchmark Additions

I decided to modify a pre-existing benchmark to include a few dictionary implementations. The newest dictionary implementation is rbdict and is not yet included in the Erlang distribution. I ran the benchmark using the latest version (R12B-5 without HiPE) on an AMD Athlon(tm) 64 Processor 3000+ running Linux 2.6.20 as x86_64 to get the results below:

array (fixed):    get:     8164µs, set:    14293µs
array (dynamic):  get:     8334µs, set:    14421µs
tuple:            get:     1472µs, set:  1603101µs
gb_trees:         get:   113114µs, set:   212955µs
rbdict:           get:     8523µs, set:    36555µs
orddict:          get:  4677552µs, set:     3860µs
dict:             get:    11223µs, set:   153662µs

The results show that rbdict is worth getting if you need an efficient dictionary implementation in Erlang.

I found a benchmark done by Robert Virding with random input. The input to the benchmark above was not random.

  • trie retest

    The older trie (speed) testing didn't experiment with Erlang compilation options and used Erlang R14B01 (newest, at the time). To examine how…

  • v4 UUIDs

    After updating the Erlang uuid implementation to fix various bugs, I added uuid:get_v4_urandom/0 function to utilize the 2006 Wichmann-Hill…

  • A Better Erlang Priority Queue

    The other priority queue implementations were meant to avoid the O(N) task of finding a priority within the implementation used by both Riak and…

  • Post a new comment


    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.