| Time | Relative time | Primitive | Implementation | Compiler |
| 16618 | 1.00 | blake32 | crypto_hash/blake32/sse2 | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 25284 | 1.52 | blake32 | crypto_hash/blake32/ref | gcc -O3 -fomit-frame-pointer |
| 17248 | 1.00 | blake64 | crypto_hash/blake64/ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 19922 | 1.16 | blake64 | crypto_hash/blake64/sse2 | gcc -funroll-loops -O3 -fomit-frame-pointer |
| 12992 | 1.00 | bmw256 | crypto_hash/bmw256/optc (Optimized_C_v2.0) | gcc -m64 -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 13006 | 1.00 | bmw256 | crypto_hash/bmw256/swpbe | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer |
| 13048 | 1.00 | bmw256 | crypto_hash/bmw256/ref | gcc -O -fomit-frame-pointer |
| 6986 | 1.00 | bmw512 | crypto_hash/bmw512/ref (1.0) | gcc -m64 -march=k8 -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 7042 | 1.01 | bmw512 | crypto_hash/bmw512/swpbe | gcc -funroll-loops -O -fomit-frame-pointer |
| 7098 | 1.02 | bmw512 | crypto_hash/bmw512/optc | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer |
| 18760 | 1.00 | cheetah256 | crypto_hash/cheetah256/asm (1.0) | gcc -march=nocona -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 33320 | 1.00 | cheetah512 | crypto_hash/cheetah512/asm (1.0) | gcc -march=nocona -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 326816 | 1.00 | cubehash81 | crypto_hash/cubehash81/emmintrin4 | gcc -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 332010 | 1.02 | cubehash81 | crypto_hash/cubehash81/emmintrin3 | gcc -m64 -O3 -fomit-frame-pointer |
| 389802 | 1.19 | cubehash81 | crypto_hash/cubehash81/emmintrin2 | gcc -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 414792 | 1.27 | cubehash81 | crypto_hash/cubehash81/emmintrin | gcc -m64 -march=k8 -O2 -fomit-frame-pointer |
| 2711562 | 8.30 | cubehash81 | crypto_hash/cubehash81/simple | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 3804248 | 11.64 | cubehash81 | crypto_hash/cubehash81/spec | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer |
| 22890 | 1.00 | cubehash816 | crypto_hash/cubehash816/emmintrin4 | gcc -m64 -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 25536 | 1.12 | cubehash816 | crypto_hash/cubehash816/emmintrin3 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 217448 | 9.50 | cubehash816 | crypto_hash/cubehash816/simple | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer |
| 554624 | 24.23 | cubehash816 | crypto_hash/cubehash816/spec | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer |
| 164024 | 1.00 | cubehash82 | crypto_hash/cubehash82/emmintrin4 | gcc -m64 -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 166138 | 1.01 | cubehash82 | crypto_hash/cubehash82/emmintrin3 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer |
| 1384278 | 8.44 | cubehash82 | crypto_hash/cubehash82/simple | gcc -march=k8 -O3 -fomit-frame-pointer |
| 2057412 | 12.54 | cubehash82 | crypto_hash/cubehash82/spec | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer |
| 12936 | 1.00 | cubehash832 | crypto_hash/cubehash832/emmintrin4 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 15036 | 1.16 | cubehash832 | crypto_hash/cubehash832/emmintrin3 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer |
| 137872 | 10.66 | cubehash832 | crypto_hash/cubehash832/simple | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer |
| 443464 | 34.28 | cubehash832 | crypto_hash/cubehash832/spec | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer |
| 84168 | 1.00 | cubehash84 | crypto_hash/cubehash84/emmintrin4 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 86282 | 1.03 | cubehash84 | crypto_hash/cubehash84/emmintrin3 | gcc -O2 -fomit-frame-pointer |
| 720958 | 8.57 | cubehash84 | crypto_hash/cubehash84/simple | gcc -m64 -march=k8 -O3 -fomit-frame-pointer |
| 1209264 | 14.37 | cubehash84 | crypto_hash/cubehash84/spec | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer |
| 43638 | 1.00 | cubehash88 | crypto_hash/cubehash88/emmintrin4 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 45738 | 1.05 | cubehash88 | crypto_hash/cubehash88/emmintrin3 | gcc -m64 -march=k8 -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 387842 | 8.89 | cubehash88 | crypto_hash/cubehash88/simple | gcc -m64 -march=k8 -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 773696 | 17.73 | cubehash88 | crypto_hash/cubehash88/spec | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer |
| 8218 | 1.00 | edonr256 | crypto_hash/edonr256/swpbe (Optimized_C_v2.0g) | gcc -march=k8 -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 9044 | 1.10 | edonr256 | crypto_hash/edonr256/optc | gcc -O -fomit-frame-pointer |
| 4578 | 1.00 | edonr512 | crypto_hash/edonr512/swpbe (Optimized_C_v2.0g) | gcc -funroll-loops -m64 -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 4914 | 1.07 | edonr512 | crypto_hash/edonr512/optc | gcc -m64 -march=nocona -O -fomit-frame-pointer |
| 68098086 | 1.00 | fsb256 | crypto_hash/fsb256/ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 63674002 | 1.00 | fsb512 | crypto_hash/fsb512/ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 35196 | 1.00 | groestl256 | crypto_hash/groestl256/asm (1.2) | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 37324 | 1.06 | groestl256 | crypto_hash/groestl256/opteron | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer |
| 46536 | 1.32 | groestl256 | crypto_hash/groestl256/opt64 | gcc -m64 -march=nocona -O -fomit-frame-pointer |
| 50974 | 1.45 | groestl256 | crypto_hash/groestl256/mmx | gcc -m64 -O3 -fomit-frame-pointer |
| 280882 | 7.98 | groestl256 | crypto_hash/groestl256/opt32 | gcc -m64 -O -fomit-frame-pointer |
| 52416 | 1.00 | groestl512 | crypto_hash/groestl512/asm (1.0) | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 76188 | 1.45 | groestl512 | crypto_hash/groestl512/opt64 | gcc -m64 -march=nocona -O -fomit-frame-pointer |
| 109354 | 2.09 | groestl512 | crypto_hash/groestl512/mmx | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer |
| 225470 | 4.30 | groestl512 | crypto_hash/groestl512/opt32 | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer |
| 47474 | 1.00 | hamsi | crypto_hash/hamsi/simd-1 | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 47544 | 1.00 | hamsi | crypto_hash/hamsi/simd-2 | gcc -march=nocona -O3 -fomit-frame-pointer |
| 17710 | 1.00 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt64u18 (1.2.0) | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 18046 | 1.02 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt64u6 | gcc -march=nocona -O3 -fomit-frame-pointer |
| 25270 | 1.43 | keccakr1024c576 | crypto_hash/keccakr1024c576/sseu2 | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer |
| 25298 | 1.43 | keccakr1024c576 | crypto_hash/keccakr1024c576/sseu6 | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer |
| 29890 | 1.69 | keccakr1024c576 | crypto_hash/keccakr1024c576/mmxu2 | gcc -m64 -march=nocona -O -fomit-frame-pointer |
| 30590 | 1.73 | keccakr1024c576 | crypto_hash/keccakr1024c576/mmxu6 | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer |
| 32956 | 1.86 | keccakr1024c576 | crypto_hash/keccakr1024c576/mmxu1 | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer |
| 44142 | 2.49 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u2 | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer |
| 44702 | 2.52 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u6 | gcc -march=nocona -O -fomit-frame-pointer |
| 45374 | 2.56 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u6nit | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer |
| 45472 | 2.57 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u2nit | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer |
| 48258 | 2.72 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u3 | gcc -O -fomit-frame-pointer |
| 49000 | 2.77 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u3nit | gcc -funroll-loops -O -fomit-frame-pointer |
| 97006 | 5.48 | keccakr1024c576 | crypto_hash/keccakr1024c576/opt32u18 | gcc -march=nocona -O -fomit-frame-pointer |
| 56938 | 1.00 | lane256 | crypto_hash/lane256/bitslice | gcc -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 57848 | 1.02 | lane256 | crypto_hash/lane256/c | gcc -march=nocona -O -fomit-frame-pointer |
| | lane256 | crypto_hash/lane256/mmx | gcc -m64 -O3 -fomit-frame-pointer |
| 261562 | 1.00 | lane512 | crypto_hash/lane512/c | gcc -m64 -march=k8 -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 19502 | 1.00 | lux256 | crypto_hash/lux256/asm (1.0) | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 19138 | 1.00 | lux512 | crypto_hash/lux512/asm (1.0) | gcc -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 69412 | 1.00 | mcssha4 | crypto_hash/mcssha4/ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| | md2 | crypto_hash/md2/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| | md4 | crypto_hash/md4/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 8946 | 1.00 | md5 | crypto_hash/md5/ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| | md5 | crypto_hash/md5/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 45710 | 1.00 | md6d224 | crypto_hash/md6d224/ref | gcc -funroll-loops -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 48888 | 1.00 | md6d256 | crypto_hash/md6d256/ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 62636 | 1.00 | md6d384 | crypto_hash/md6d384/ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 76020 | 1.00 | md6d512 | crypto_hash/md6d512/ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 39494 | 1.00 | nasha256 | crypto_hash/nasha256/opt_v4 | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 41622 | 1.05 | nasha256 | crypto_hash/nasha256/opt | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer |
| 42728 | 1.00 | nasha512 | crypto_hash/nasha512/opt_v4 | gcc -march=nocona -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 44828 | 1.05 | nasha512 | crypto_hash/nasha512/opt | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer |
| | ripemd160 | crypto_hash/ripemd160/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 13664 | 1.00 | sarmal256 | crypto_hash/sarmal256/asm64 (1.00) | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 17318 | 1.27 | sarmal256 | crypto_hash/sarmal256/opt64 | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer |
| 16940 | 1.00 | sarmal512 | crypto_hash/sarmal512/asm64 (1.00) | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 21098 | 1.25 | sarmal512 | crypto_hash/sarmal512/opt64 | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer |
| | sha1 | crypto_hash/sha1/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| | sha224 | crypto_hash/sha224/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 24794 | 1.00 | sha256 | crypto_hash/sha256/cryptopp | g++ -march=nocona -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 32564 | 1.31 | sha256 | crypto_hash/sha256/ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer |
| | sha256 | crypto_hash/sha256/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| | sha384 | crypto_hash/sha384/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 21980 | 1.00 | sha512 | crypto_hash/sha512/cryptopp | g++ -m64 -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 23016 | 1.05 | sha512 | crypto_hash/sha512/ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer |
| | sha512 | crypto_hash/sha512/openssl | gcc -m64 -O3 -fomit-frame-pointer |
| 13916 | 1.00 | shabal512 | crypto_hash/shabal512/ref (1.0) | gcc -m64 -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 42462 | 1.00 | shavite3256 | crypto_hash/shavite3256/256bit-nosalt (1.00(32bitOpt-nosalt)) | gcc -funroll-loops -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 44408 | 1.05 | shavite3256 | crypto_hash/shavite3256/256bit | gcc -funroll-loops -O -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 188062 | 1.00 | shavite3512 | crypto_hash/shavite3512/512bit (1.00(32bitOpt)) | gcc -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| | shavite3512 | crypto_hash/shavite3512/512bit-nosalt | gcc -m64 -O3 -fomit-frame-pointer |
| | shavite3512 | crypto_hash/shavite3512/512bit-nosalt2 | gcc -m64 -O3 -fomit-frame-pointer |
| 18368 | 1.00 | simd256 | crypto_hash/simd256/vect128 (1.1) | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 102018 | 5.55 | simd256 | crypto_hash/simd256/opt | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer |
| 4234006 | 230.51 | simd256 | crypto_hash/simd256/ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer |
| | simd256 | crypto_hash/simd256/vectarm | gcc -m64 -O3 -fomit-frame-pointer |
| 21392 | 1.00 | simd512 | crypto_hash/simd512/vect128 (1.1) | gcc -funroll-loops -m64 -Os -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 112364 | 5.25 | simd512 | crypto_hash/simd512/opt | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer |
| 8469580 | 395.92 | simd512 | crypto_hash/simd512/ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer |
| 10864 | 1.00 | skein512 | crypto_hash/skein512/opt | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 10864 | 1.00 | tiger | crypto_hash/tiger/cryptopp | g++ -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 46466 | 1.00 | whirlpool | crypto_hash/whirlpool/cryptopp | g++ -m64 -march=k8 -O2 -fomit-frame-pointer (4.2.4 (Ubuntu 4.2.4-1ubuntu3)) |
| 71176 | 1.53 | whirlpool | crypto_hash/whirlpool/ref | gcc -m64 -march=k8 -O -fomit-frame-pointer |