zig/std/hash
Marc Tiehuis 326b7b794b
Improve siphash performance for small keys by up to 30% (#3124)
This removes the partial buffer handling from the full slice api.

`./benchmark --filter siphash --count 1024`

old

    siphash(1,3)
       iterative: 3388 MiB/s [67532e53a0d210bf]
      small keys: 1258 MiB/s [948c91176a000000]
    siphash(2,4)
       iterative: 2061 MiB/s [f792d39bff42f819]
      small keys:  902 MiB/s [e1ecba6614000000]

new

    siphash(1,3)
       iterative: 3410 MiB/s [67532e53a0d210bf]
      small keys: 1639 MiB/s [948c91176a000000]
    siphash(2,4)
       iterative: 2053 MiB/s [f792d39bff42f819]
      small keys: 1074 MiB/s [e1ecba6614000000]
2019-08-27 20:13:57 +12:00
..
adler.zig
auto_hash.zig Merge remote-tracking branch 'origin/master' into rewrite-coroutines 2019-08-04 19:10:36 -04:00
benchmark.zig std/hash: Revert crc32 api change 2019-08-24 19:05:05 +12:00
cityhash.zig Intentional wraparound used + 2019-07-13 13:59:15 +02:00
crc.zig std/hash: Revert crc32 api change 2019-08-24 19:05:05 +12:00
fnv.zig
murmur.zig Proper use of @truncate instead of @intCast 2019-07-13 13:59:15 +02:00
siphash.zig Improve siphash performance for small keys by up to 30% (#3124) 2019-08-27 20:13:57 +12:00
wyhash.zig Inline full slice hashing 2019-08-21 21:38:02 +12:00