just pushed the latest google_hash gem, 0.8.0
it frees internal hash objects when they’re garbage collected now
it now compiles on machines that have a gcc that (I guess) is more
strict with linking when it comes to using tr1/functional hashes than
the ones I use.
it now has a working #delete method for the SparseHash’s.
The “google_hash” gem.
Its goal. To boldly be faster than any ruby hash has before.
Basically, it has a faster #each method for hashes than Ruby’s
built-in hash, and it also allows you to store “native” types in hash
(which can be even faster), for instance if you want to map ints to
ints, or doubles to ints, etc.
Because it can save native types, it can also reduce the time ruby
uses for garbage collection, for instance , with a hash of !M int to
ints, doing a GC takes this long, comparatively:
GoogleHashDenseIntToInt: 0.002, ruby hash took 0.103.
And this is the GC that runs all the time in the background.
So it’s a new thing in your toolkit.
More info here: https://github.com/rdp/google_hash