Bitcoin Core 31.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
crypto_hash.cpp File Reference
#include <bench/bench.h>
#include <crypto/muhash.h>
#include <crypto/ripemd160.h>
#include <crypto/sha1.h>
#include <crypto/sha256.h>
#include <crypto/sha3.h>
#include <crypto/sha512.h>
#include <crypto/siphash.h>
#include <random.h>
#include <span.h>
#include <tinyformat.h>
#include <uint256.h>
#include <cstdint>
#include <vector>
Include dependency graph for crypto_hash.cpp:

Go to the source code of this file.

Functions

static void BenchRIPEMD160 (benchmark::Bench &bench)
static void SHA1 (benchmark::Bench &bench)
static void SHA256_STANDARD (benchmark::Bench &bench)
static void SHA256_SSE4 (benchmark::Bench &bench)
static void SHA256_AVX2 (benchmark::Bench &bench)
static void SHA256_SHANI (benchmark::Bench &bench)
static void SHA3_256_1M (benchmark::Bench &bench)
static void SHA256_32b_STANDARD (benchmark::Bench &bench)
static void SHA256_32b_SSE4 (benchmark::Bench &bench)
static void SHA256_32b_AVX2 (benchmark::Bench &bench)
static void SHA256_32b_SHANI (benchmark::Bench &bench)
static void SHA256D64_1024_STANDARD (benchmark::Bench &bench)
static void SHA256D64_1024_SSE4 (benchmark::Bench &bench)
static void SHA256D64_1024_AVX2 (benchmark::Bench &bench)
static void SHA256D64_1024_SHANI (benchmark::Bench &bench)
static void SHA512 (benchmark::Bench &bench)
static void SipHash_32b (benchmark::Bench &bench)
static void MuHash (benchmark::Bench &bench)
static void MuHashMul (benchmark::Bench &bench)
static void MuHashDiv (benchmark::Bench &bench)
static void MuHashPrecompute (benchmark::Bench &bench)
static void MuHashFinalize (benchmark::Bench &bench)
 BENCHMARK (BenchRIPEMD160)
 BENCHMARK (SHA1)
 BENCHMARK (SHA256_STANDARD)
 BENCHMARK (SHA256_SSE4)
 BENCHMARK (SHA256_AVX2)
 BENCHMARK (SHA256_SHANI)
 BENCHMARK (SHA512)
 BENCHMARK (SHA3_256_1M)
 BENCHMARK (SHA256_32b_STANDARD)
 BENCHMARK (SHA256_32b_SSE4)
 BENCHMARK (SHA256_32b_AVX2)
 BENCHMARK (SHA256_32b_SHANI)
 BENCHMARK (SipHash_32b)
 BENCHMARK (SHA256D64_1024_STANDARD)
 BENCHMARK (SHA256D64_1024_SSE4)
 BENCHMARK (SHA256D64_1024_AVX2)
 BENCHMARK (SHA256D64_1024_SHANI)
 BENCHMARK (MuHash)
 BENCHMARK (MuHashMul)
 BENCHMARK (MuHashDiv)
 BENCHMARK (MuHashPrecompute)
 BENCHMARK (MuHashFinalize)

Variables

static const uint64_t BUFFER_SIZE = 1000*1000

Function Documentation

◆ BENCHMARK() [1/22]

BENCHMARK ( BenchRIPEMD160 )
Here is the call graph for this function:

◆ BENCHMARK() [2/22]

BENCHMARK ( MuHash )
Here is the call graph for this function:

◆ BENCHMARK() [3/22]

BENCHMARK ( MuHashDiv )
Here is the call graph for this function:

◆ BENCHMARK() [4/22]

BENCHMARK ( MuHashFinalize )
Here is the call graph for this function:

◆ BENCHMARK() [5/22]

BENCHMARK ( MuHashMul )
Here is the call graph for this function:

◆ BENCHMARK() [6/22]

BENCHMARK ( MuHashPrecompute )
Here is the call graph for this function:

◆ BENCHMARK() [7/22]

BENCHMARK ( SHA1 )
Here is the call graph for this function:

◆ BENCHMARK() [8/22]

BENCHMARK ( SHA256_32b_AVX2 )
Here is the call graph for this function:

◆ BENCHMARK() [9/22]

BENCHMARK ( SHA256_32b_SHANI )
Here is the call graph for this function:

◆ BENCHMARK() [10/22]

BENCHMARK ( SHA256_32b_SSE4 )
Here is the call graph for this function:

◆ BENCHMARK() [11/22]

BENCHMARK ( SHA256_32b_STANDARD )
Here is the call graph for this function:

◆ BENCHMARK() [12/22]

BENCHMARK ( SHA256_AVX2 )
Here is the call graph for this function:

◆ BENCHMARK() [13/22]

BENCHMARK ( SHA256_SHANI )
Here is the call graph for this function:

◆ BENCHMARK() [14/22]

BENCHMARK ( SHA256_SSE4 )
Here is the call graph for this function:

◆ BENCHMARK() [15/22]

BENCHMARK ( SHA256_STANDARD )
Here is the call graph for this function:

◆ BENCHMARK() [16/22]

BENCHMARK ( SHA256D64_1024_AVX2 )
Here is the call graph for this function:

◆ BENCHMARK() [17/22]

BENCHMARK ( SHA256D64_1024_SHANI )
Here is the call graph for this function:

◆ BENCHMARK() [18/22]

BENCHMARK ( SHA256D64_1024_SSE4 )
Here is the call graph for this function:

◆ BENCHMARK() [19/22]

BENCHMARK ( SHA256D64_1024_STANDARD )
Here is the call graph for this function:

◆ BENCHMARK() [20/22]

BENCHMARK ( SHA3_256_1M )
Here is the call graph for this function:

◆ BENCHMARK() [21/22]

BENCHMARK ( SHA512 )
Here is the call graph for this function:

◆ BENCHMARK() [22/22]

BENCHMARK ( SipHash_32b )
Here is the call graph for this function:

◆ BenchRIPEMD160()

void BenchRIPEMD160 ( benchmark::Bench & bench)
static

Definition at line 25 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MuHash()

void MuHash ( benchmark::Bench & bench)
static

Definition at line 206 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MuHashDiv()

void MuHashDiv ( benchmark::Bench & bench)
static

Definition at line 228 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MuHashFinalize()

void MuHashFinalize ( benchmark::Bench & bench)
static

Definition at line 250 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MuHashMul()

void MuHashMul ( benchmark::Bench & bench)
static

Definition at line 217 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MuHashPrecompute()

void MuHashPrecompute ( benchmark::Bench & bench)
static

Definition at line 239 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA1()

void SHA1 ( benchmark::Bench & bench)
static

Definition at line 34 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_32b_AVX2()

void SHA256_32b_AVX2 ( benchmark::Bench & bench)
static

Definition at line 120 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_32b_SHANI()

void SHA256_32b_SHANI ( benchmark::Bench & bench)
static

Definition at line 132 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_32b_SSE4()

void SHA256_32b_SSE4 ( benchmark::Bench & bench)
static

Definition at line 108 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_32b_STANDARD()

void SHA256_32b_STANDARD ( benchmark::Bench & bench)
static

Definition at line 96 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_AVX2()

void SHA256_AVX2 ( benchmark::Bench & bench)
static

Definition at line 65 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_SHANI()

void SHA256_SHANI ( benchmark::Bench & bench)
static

Definition at line 76 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_SSE4()

void SHA256_SSE4 ( benchmark::Bench & bench)
static

Definition at line 54 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256_STANDARD()

void SHA256_STANDARD ( benchmark::Bench & bench)
static

Definition at line 43 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256D64_1024_AVX2()

void SHA256D64_1024_AVX2 ( benchmark::Bench & bench)
static

Definition at line 164 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256D64_1024_SHANI()

void SHA256D64_1024_SHANI ( benchmark::Bench & bench)
static

Definition at line 174 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256D64_1024_SSE4()

void SHA256D64_1024_SSE4 ( benchmark::Bench & bench)
static

Definition at line 154 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA256D64_1024_STANDARD()

void SHA256D64_1024_STANDARD ( benchmark::Bench & bench)
static

Definition at line 144 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA3_256_1M()

void SHA3_256_1M ( benchmark::Bench & bench)
static

Definition at line 87 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SHA512()

void SHA512 ( benchmark::Bench & bench)
static

Definition at line 184 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SipHash_32b()

void SipHash_32b ( benchmark::Bench & bench)
static

Definition at line 193 of file crypto_hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ BUFFER_SIZE

const uint64_t BUFFER_SIZE = 1000*1000
static

Definition at line 23 of file crypto_hash.cpp.