Skip to content

Instantly share code, notes, and snippets.

@lexmag
Last active August 29, 2015 14:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lexmag/32977ce8fd7cb44ddefa to your computer and use it in GitHub Desktop.
Save lexmag/32977ce8fd7cb44ddefa to your computer and use it in GitHub Desktop.
MapSet evaluation - elixir#3242

Erlang/OTP 18 RC-1

Elixir 1.1.0-dev

  • new

  • put

    • 100 elements
    MapSet:    10000000   0.16 µs/op
    HashSet:   10000000   0.37 µs/op
    
    • 200 elements
    MapSet:    10000000   0.16 µs/op
    HashSet:   10000000   0.42 µs/op
    
    • 1000 elements
    MapSet:    10000000   0.21 µs/op
    HashSet:   10000000   0.51 µs/op
    
    • 5000 elements
    MapSet:    10000000   0.26 µs/op
    HashSet:   10000000   0.60 µs/op
    
  • delete

    • 100 elements
    MapSet:   100000000   0.11 µs/op
    HashSet:   10000000   0.17 µs/op
    
    • 200 elements
    MapSet:    10000000   0.11 µs/op
    HashSet:   10000000   0.19 µs/op
    
    • 1000 elements
    MapSet:    10000000   0.11 µs/op
    HashSet:   10000000   0.31 µs/op
    
    • 5000 elements
    MapSet:    10000000   0.13 µs/op
    HashSet:   10000000   0.33 µs/op
    
  • difference

  • disjoint?

  • equal?

    • 200 elements
    MapSet:   100000000   0.07 µs/op
    HashSet:      10000   128.45 µs/op
    
    • 1000 elements (equal)
    MapSet:   100000000   0.07 µs/op
    HashSet:       5000   704.84 µs/op
    
    • 1000 elements (unequal)
    MapSet:   100000000   0.09 µs/op
    HashSet:   10000000   0.71 µs/op
    
  • intersection

  • member?

    • 200 elements
    MapSet:   100000000   0.07 µs/op
    HashSet:   10000000   0.20 µs/op
    
    • 1000 elements
    MapSet:   100000000   0.07 µs/op
    HashSet:   10000000   0.22 µs/op
    
    • 5000 elements
    MapSet:   100000000   0.08 µs/op
    HashSet:   10000000   0.26 µs/op
    
  • size

  • subset?

  • to_list

    • 200 elements
    MapSet:     1000000   2.05 µs/op
    HashSet:      50000   38.05 µs/op
    
    • 1000 elements
    MapSet:      100000   12.33 µs/op
    HashSet:      10000   209.33 µs/op
    
    • 5000 elements
    MapSet:       50000   70.11 µs/op
    HashSet:       2000   939.45 µs/op
    
  • union

    • 200 elements
    MapSet:      200000   7.21 µs/op
    HashSet:      10000   159.85 µs/op
    
    • 1000 elements
    MapSet:      100000   27.98 µs/op
    HashSet:       2000   850.68 µs/op
    
    • 5000 elements
    MapSet:       10000   207.84 µs/op
    HashSet:        500   4208.29 µs/op
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment