Skip to content

Instantly share code, notes, and snippets.

@mdcallag
Last active January 4, 2023 16:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mdcallag/ba8f082331fe7915afee69f3760b18c5 to your computer and use it in GitHub Desktop.
Save mdcallag/ba8f082331fe7915afee69f3760b18c5 to your computer and use it in GitHub Desktop.
c7g.2xl
--- c7g.2xl, gcc, xxHash repo at latest on dev branch githash=4ebd833a2
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 16395, 20034, 21014, 21705, 21957, 22245, 22218, 22258, 21899, 21534, 21140, 20713, 19999, 19451, 18827, 17637, 14971, 14827, 14736
XXH32 , 9517, 9938, 10158, 10267, 10271, 10324, 10351, 10349, 10360, 10366, 10276, 9936, 9584, 9365, 9456, 9485, 9596, 9520, 9514
XXH64 , 11601, 12525, 13236, 13457, 13649, 13666, 13688, 13688, 13657, 13732, 13511, 12951, 12631, 12199, 11995, 12109, 11832, 11906, 11913
XXH128 , 13519, 16915, 19653, 21066, 21738, 22190, 22334, 22363, 22071, 22130, 21786, 20794, 20187, 19248, 17943, 16384, 14658, 14559, 14442
--- c7g.2xl, gcc, xxHash repo at release branch (version 0.8.1)
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 12953, 14455, 14853, 14596, 14380, 14375, 14336, 15382, 15223, 15325, 15325, 14549, 13837, 13653, 12991, 13084, 12513, 12606, 12395
XXH32 , 9417, 9873, 10121, 10248, 10272, 10325, 10352, 10344, 10360, 10366, 10370, 9812, 9458, 9145, 9256, 9400, 9435, 9452, 9455
XXH64 , 11541, 12547, 13198, 13474, 13605, 13700, 13768, 13766, 13798, 13825, 13823, 13098, 12503, 11902, 11895, 12107, 11808, 11829, 11836
XXH128 , 10820, 13271, 14115, 14499, 14296, 14353, 14376, 15359, 15212, 15238, 15248, 14401, 13905, 13393, 13111, 13023, 12362, 12552, 12435
--- c7g.2xl, gcc, xxHash repo at dev branch at git hash 2c611a76f91, https://github.com/Cyan4973/xxHash/commit/2c611a76f91
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 12468, 14466, 14880, 14745, 14427, 14470, 14357, 15388, 15219, 15228, 15057, 14537, 13915, 13642, 13268, 13088, 12670, 12596, 12626
XXH32 , 9207, 9751, 10048, 10221, 10261, 10321, 10346, 10346, 10358, 10364, 10364, 9910, 9538, 9213, 9361, 9451, 9528, 9570, 9496
XXH64 , 11446, 12420, 13068, 13452, 13637, 13689, 13724, 13710, 13767, 13796, 13775, 13107, 12641, 12332, 12164, 12196, 12003, 12004, 11940
XXH128 , 10779, 13243, 14099, 14354, 14197, 14318, 14267, 15338, 15204, 15223, 15220, 14545, 13903, 13405, 13295, 13298, 12660, 12787, 12880
--- c7g.2xl, gcc, xxHash repo at dev branch at git hash 620facc5 https://github.com/Cyan4973/xxHash/commit/620facc5
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 16405, 20121, 21069, 21863, 22276, 22497, 22476, 22479, 22107, 22285, 21922, 20646, 20131, 19741, 18491, 17649, 15042, 14903, 14992
XXH32 , 9414, 9872, 10154, 10268, 10273, 10326, 10352, 10344, 10362, 10371, 10364, 9948, 9655, 9441, 9434, 9592, 9632, 9635, 9614
XXH64 , 11563, 12597, 13159, 13467, 13616, 13694, 13775, 13776, 13796, 13818, 13756, 13276, 12762, 12359, 12194, 12315, 12130, 12180, 12145
XXH128 , 13532, 16653, 19638, 21057, 21850, 22143, 22418, 22375, 22046, 22067, 22013, 20762, 20310, 19515, 18627, 17185, 15158, 15079, 15082
--- c7g.2xl, gcc, xxHash repo at c4359b1 on dev branch, https://github.com/Cyan4973/xxHash/commit/c4359b1
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 14302, 18345, 20091, 21409, 22108, 22493, 22621, 22627, 22517, 22484, 22003, 21034, 20367, 20081, 19380, 17236, 14908, 15065, 14989
XXH32 , 9419, 9871, 10122, 10247, 10274, 10325, 10352, 10345, 10358, 10364, 10327, 9928, 9600, 9309, 9454, 9555, 9533, 9536, 9556
XXH64 , 11533, 12579, 13128, 13467, 13621, 13717, 13743, 13768, 13802, 13811, 13734, 13017, 12569, 12186, 12067, 12179, 11885, 11993, 11901
XXH128 , 12399, 16336, 19026, 21076, 22280, 22882, 23167, 23231, 22978, 23053, 23057, 21379, 20743, 20332, 19033, 17185, 15152, 15081, 15300
--- c6i.2xl, gcc, xxHash repo at latest on dev branch githash=4ebd833a2
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 18708, 21344, 22538, 23119, 23423, 23419, 23575, 23555, 23605, 23660, 23686, 23595, 23515, 23525, 23485, 23135, 15204, 11942, 10902
XXH32 , 6917, 6945, 6958, 6903, 6937, 6952, 6961, 6959, 6963, 6967, 6968, 6964, 6955, 6955, 6908, 6918, 6338, 6060, 6090
XXH64 , 11699, 12933, 13419, 13675, 13654, 13794, 13868, 13892, 13914, 13923, 13932, 13918, 13895, 13909, 13900, 13785, 10867, 9547, 9276
XXH128 , 15584, 19504, 21435, 22487, 23065, 23269, 23468, 23426, 23526, 23589, 23620, 23584, 23357, 23443, 23352, 22925, 16747, 12107, 11101
--- c6i.2xl, gcc, xxHash repo at release branch version 0.8.1
$ ./benchHash
=== benchmarking 4 hash functions ===
benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
xxh3 , 18614, 21898, 22675, 23167, 23445, 23487, 23610, 23575, 23633, 23670, 23688, 23673, 23578, 23593, 23562, 23393, 16987, 12619, 11746
XXH32 , 6917, 6945, 6958, 6928, 6949, 6961, 6965, 6963, 6968, 6969, 6971, 6966, 6961, 6962, 6957, 6945, 6551, 6224, 6155
XXH64 , 12191, 13084, 13499, 13713, 13675, 13807, 13874, 13894, 13915, 13932, 13938, 13912, 13894, 13912, 13900, 13833, 12125, 9610, 9517
XXH128 , 15518, 19491, 21353, 22374, 22922, 23125, 23315, 23292, 23390, 23448, 23488, 23439, 23445, 23518, 23488, 23353, 17781, 12123, 11180
--- c7g.2xl, gcc -O2, from db_bench
xxh3 : 0.404 micros/op 2475726 ops/sec 0.517 seconds 1280000 operations; 9670.8 MB/s (4096 per op)
xxh3 : 0.812 micros/op 1232183 ops/sec 0.519 seconds 640000 operations; 9626.4 MB/s (8192 per op)
xxhash : 0.404 micros/op 2472918 ops/sec 0.518 seconds 1280000 operations; 9659.8 MB/s (4096 per op)
xxhash : 0.803 micros/op 1245565 ops/sec 0.514 seconds 640000 operations; 9731.0 MB/s (8192 per op)
xxhash64 : 0.310 micros/op 3229501 ops/sec 0.396 seconds 1280000 operations; 12615.2 MB/s (4096 per op)
xxhash64 : 0.607 micros/op 1647828 ops/sec 0.388 seconds 640000 operations; 12873.7 MB/s (8192 per op)
--- c7g.2xl, gcc -O3, from db_bench
xxh3 : 0.290 micros/op 3442590 ops/sec 0.372 seconds 1280000 operations; 13447.6 MB/s (4096 per op)
xxh3 : 0.538 micros/op 1859783 ops/sec 0.344 seconds 640000 operations; 14529.6 MB/s (8192 per op)
xxhash : 0.403 micros/op 2481519 ops/sec 0.516 seconds 1280000 operations; 9693.4 MB/s (4096 per op)
xxhash : 0.801 micros/op 1247745 ops/sec 0.513 seconds 640000 operations; 9748.0 MB/s (8192 per op)
xxhash64 : 0.308 micros/op 3242147 ops/sec 0.395 seconds 1280000 operations; 12664.6 MB/s (4096 per op)
xxhash64 : 0.608 micros/op 1645443 ops/sec 0.389 seconds 640000 operations; 12855.0 MB/s (8192 per op)
--- c6i.2xl, gcc, from db_bench
Each pair is for operation/4kb and then /8kb
xxh3 : 0.084 micros/op 11909303 ops/sec 0.107 seconds 1280000 operations; 46520.7 MB/s (4096 per op)
xxh3 : 0.150 micros/op 6658343 ops/sec 0.096 seconds 640000 operations; 52018.3 MB/s (8192 per op)
xxhash : 0.597 micros/op 1674325 ops/sec 0.764 seconds 1280000 operations; 6540.3 MB/s (4096 per op)
xxhash : 1.185 micros/op 843531 ops/sec 0.759 seconds 640000 operations; 6590.1 MB/s (8192 per op)
xxhash64 : 0.310 micros/op 3224189 ops/sec 0.397 seconds 1280000 operations; 12594.5 MB/s (4096 per op)
xxhash64 : 0.605 micros/op 1652154 ops/sec 0.387 seconds 640000 operations; 12907.5 MB/s (8192 per op)
---
void Crc32c(ThreadState* thread) {
ChecksumBenchmark<kCrc>(crc32c::Value, thread);
}
void xxHash(ThreadState* thread) {
ChecksumBenchmark<kHash>(XXH32, thread, /*seed*/ 0);
}
void xxHash64(ThreadState* thread) {
ChecksumBenchmark<kHash>(XXH64, thread, /*seed*/ 0);
}
void xxh3(ThreadState* thread) {
ChecksumBenchmark<kHash>(XXH3_64bits, thread);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment