Skip to content
This repository was archived by the owner on Jun 27, 2023. It is now read-only.

Benchmarks

Vincent Sonnier edited this page Sep 10, 2015 · 15 revisions

Map benchmarks

Everybody have different goals when benching against others.

This one is no exception: the aim was to test speed consistency against different kinds of inputs, rather than peak performance on favorable conditions. (which is Random keys for hash-based containers)

The Object benchmark in particular tried to stress on that, by simulating a heavy cost for equals()/hashCode(), which naturally tends to favor the implementations where the number of such method calls to perform put()/get()/containsKey() is minimal.

Indeed Robin-hood hashing was used for Objects in HPPC-RT because on the particular gain in unsuccessful get()/containsKey()/remove() operations.
On the other end, put() operations are slower than the other implementations. It is all a matter of tradeoffs !

Benchmarks are performed against Koloboke 0.6.7, Fastutil 7+, GS collections 6.2:

[Gist is here.] (https://gist.github.com/vsonnier/518e438b5ee2d7c7ec95)

Clone this wiki locally