Skip to content

jl2922/fhash

Repository files navigation

fhash

Fast hash map implementation in fortran

Description

Implemention of the GCC hashmap structure in Fortran. With the usage of macros, it can support any types of keys and values, as long as you implement (or the compiler provides) the corresponding equal operator(==), assignment operator(=) and the hash_value interface of the key type and the assignment operator of the value type.

Benchmarks

Here are the benchmarks between my Fortran implementation and GCC 4.8 standard library:

For 14 integer array as the key, double precision floating point as the value, 10M entries:

Fortran hash:

Insert: 1.80 s

Clean: 1.70 s

1.59 GB

GCC unordered_map:

Insert: 2.02 s

Clean: 0.61 s

1.38 GB

For 2 integer array as the key, double precision floating point as the value, 20M entries:

Fortran hash:

Insert: 2.66 s

Clean: 2.54 s

2.57 GB

GCC unordered_map:

Insert: 3.60 s

Clean: 1.07 s

2.16 GB

About

Fast hash map implementation in fortran

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •