You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
["A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing"](https://bigdata.uni-saarland.de/publications/p249-richter.pdf).
418
+
and [S. Richter, V. Alvarez, and J. Dittrich. 2015. A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing, Proceedings of the VLDB Endowment, Vol. 9, No. 3.](https://bigdata.uni-saarland.de/publications/p249-richter.pdf)[https://doi.org/10.14778/2850583.2850585](https://doi.org/10.14778/2850583.2850585).
420
419
421
420
The `stdlib_32_bit_nmhashes` submodule provides implementations
422
421
of James Z.M. Gao's `nmhash32` and `nmhash32x` algorithms,
@@ -1624,7 +1623,7 @@ various hash functions. The other is a comparison of the outputs of
1624
1623
the Fortran hash functions, with the outputs of the C and C++ hash
1625
1624
procedures that are the inspiration for the Fortran hash functions.
1626
1625
1627
-
In the `src/test/hash_functions` subdirectory, the Fortran Standard
1626
+
In the `src/test/hash_functions_perf` subdirectory, the Fortran Standard
1628
1627
Library provides two performance test codes for
1629
1628
the hash functions of `stdlib_hash_32bit` and
1630
1629
`stdlib_hash_64bit`, `test_32_bit_hash_performance` and
@@ -1729,20 +1728,17 @@ severely impact the performance of `nmhash32`, `nmhash32x`,
1729
1728
`water_hash`, `pengy_hash`, and `spooky_hash` relative to
1730
1729
`fnv_1_hash` and `fnv_1a_hash`.
1731
1730
1732
-
In the `src/test/hash_functions/validation` subdirectory, the Fortran
1733
-
Standard Library implements three executables to test the validity of
1734
-
the Fortran codes against the original C and C++ codes. The three
1735
-
executables must be compiled manually using the makefile
1736
-
`Makefile.validation`, and the compiler suite used must be
1737
-
GCC's. The first executable, `generate_key_array` is
1738
-
based on Fortran code, and generates a random sequence of 2048
1731
+
In the `src/test/hash_functions` subdirectory, the Fortran
1732
+
Standard Library contains codes to test the validity of
1733
+
the Fortran codes against the original C and C++ codes. It consists of one
1734
+
executable `test_hash_functions` that
1735
+
1) generates a random sequence of 2048
1739
1736
integers of kind `int8`, and stores that sequence in the binary file
1740
-
`key_array.bin`. The second executable, `generate_hash_arrays`, reads
1741
-
the values in `key_array.bin`, and, for each complicated hash
1742
-
procedure generates a corresponding binary file containing 2049 hash
1743
-
values generated from the values in `key_array.bin`. The third
1744
-
executable, `hash_validity_test`, reads the binary files and for each
1745
-
complicated hash procedure compares the contents of the binary file
1737
+
`key_array.bin`;
1738
+
2) reads the values in `key_array.bin`, and, for each complicated C/C++-coded
1739
+
hash procedure, generates a corresponding binary file containing 2049 hash
1740
+
values generated from the values in `key_array.bin`., and
1741
+
3)reads the binary files, and, for each complicated C/C++-coded hash procedure,
1742
+
compares the contents of the binary file
1746
1743
with the results of calculating hash values using the corresponding
1747
-
Fortran hash procedure on the same keys. These executables must be run
Copy file name to clipboardExpand all lines: src/tests/hash_functions/README.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
The validation directory contains code to validate the Fortran hash functions against the original C/C++ codes. It consists of one executable `test_hash_functions` that:
1
+
The hash_functions directory contains code to validate the Fortran hash functions against the original C/C++ codes. It consists of one executable `test_hash_functions` that:
2
2
3
3
* creates a file containing 2048 random 8 bit integers using the subroutine
0 commit comments