Open uselessgoddess opened 2 years ago
Can we make a benchmark? Does it provide good distribution of data?
Check out this paper
I don’t see compassion with crc32 in this paper.
Lol. Crc is insecure, 100% bias, collisions, distrib, BIC, machine-specific (x86 SSE4.2+PCLMUL)
But I make simple tests
At random data:
throughput-example/ahash
time: [4.2010 ms 4.2792 ms 4.3583 ms]
thrpt: [218.82 MiB/s 222.86 MiB/s 227.01 MiB/s]
throughput-example/crc32
time: [6.9233 ms 7.0549 ms 7.1902 ms]
thrpt: [132.64 MiB/s 135.18 MiB/s 137.75 MiB/s]
throughput-example/crc64
time: [6.7178 ms 6.7916 ms 6.8669 ms]
thrpt: [138.88 MiB/s 140.42 MiB/s 141.96 MiB/s]
throughput-example/crc82
time: [6.6964 ms 6.7878 ms 6.8808 ms]
thrpt: [138.60 MiB/s 140.50 MiB/s 142.42 MiB/s]
At static data:
throughput-example/ahash
time: [71.363 µs 73.370 µs 75.365 µs]
thrpt: [12.357 GiB/s 12.693 GiB/s 13.050 GiB/s]
throughput-example/crc32
time: [2.0147 ms 2.0192 ms 2.0236 ms]
thrpt: [471.27 MiB/s 472.31 MiB/s 473.35 MiB/s]
throughput-example/crc64
time: [2.1869 ms 2.2210 ms 2.2593 ms]
thrpt: [422.11 MiB/s 429.38 MiB/s 436.08 MiB/s]
throughput-example/crc82
time: [2.3661 ms 2.3768 ms 2.3875 ms]
thrpt: [399.44 MiB/s 401.24 MiB/s 403.06 MiB/s]
ahash
is a non-crypto crazy fast hash algo without SSE and AVX instructions only for hash maps.