Bitcoin Core  27.99.0
P2P Digital Currency
Classes | Macros | Functions
bench_ecmult.c File Reference
#include <stdio.h>
#include "secp256k1.c"
#include "../include/secp256k1.h"
#include "util.h"
#include "hash_impl.h"
#include "field_impl.h"
#include "group_impl.h"
#include "scalar_impl.h"
#include "ecmult_impl.h"
#include "bench.h"
Include dependency graph for bench_ecmult.c:

Go to the source code of this file.

Classes

struct  bench_data
 

Macros

#define POINTS   32768
 

Functions

static void help (char **argv)
 
static void hash_into_offset (bench_data *data, size_t x)
 
static void bench_ecmult_teardown_helper (bench_data *data, size_t *seckey_offset, size_t *scalar_offset, size_t *scalar_gen_offset, int iters)
 
static void bench_ecmult_setup (void *arg)
 
static void bench_ecmult_gen (void *arg, int iters)
 
static void bench_ecmult_gen_teardown (void *arg, int iters)
 
static void bench_ecmult_const (void *arg, int iters)
 
static void bench_ecmult_const_teardown (void *arg, int iters)
 
static void bench_ecmult_1p (void *arg, int iters)
 
static void bench_ecmult_1p_teardown (void *arg, int iters)
 
static void bench_ecmult_0p_g (void *arg, int iters)
 
static void bench_ecmult_0p_g_teardown (void *arg, int iters)
 
static void bench_ecmult_1p_g (void *arg, int iters)
 
static void bench_ecmult_1p_g_teardown (void *arg, int iters)
 
static void run_ecmult_bench (bench_data *data, int iters)
 
static int bench_ecmult_multi_callback (secp256k1_scalar *sc, secp256k1_ge *ge, size_t idx, void *arg)
 
static void bench_ecmult_multi (void *arg, int iters)
 
static void bench_ecmult_multi_setup (void *arg)
 
static void bench_ecmult_multi_teardown (void *arg, int iters)
 
static void generate_scalar (uint32_t num, secp256k1_scalar *scalar)
 
static void run_ecmult_multi_bench (bench_data *data, size_t count, int includes_g, int num_iters)
 
int main (int argc, char **argv)
 

Macro Definition Documentation

◆ POINTS

#define POINTS   32768

Definition at line 19 of file bench_ecmult.c.

Function Documentation

◆ bench_ecmult_0p_g()

static void bench_ecmult_0p_g ( void *  arg,
int  iters 
)
static

Definition at line 139 of file bench_ecmult.c.

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

◆ bench_ecmult_0p_g_teardown()

static void bench_ecmult_0p_g_teardown ( void *  arg,
int  iters 
)
static

Definition at line 148 of file bench_ecmult.c.

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

◆ bench_ecmult_1p()

static void bench_ecmult_1p ( void *  arg,
int  iters 
)
static

Definition at line 125 of file bench_ecmult.c.

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

◆ bench_ecmult_1p_g()

static void bench_ecmult_1p_g ( void *  arg,
int  iters 
)
static

Definition at line 153 of file bench_ecmult.c.

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

◆ bench_ecmult_1p_g_teardown()

static void bench_ecmult_1p_g_teardown ( void *  arg,
int  iters 
)
static

Definition at line 162 of file bench_ecmult.c.

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

◆ bench_ecmult_1p_teardown()

static void bench_ecmult_1p_teardown ( void *  arg,
int  iters 
)
static

Definition at line 134 of file bench_ecmult.c.

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

◆ bench_ecmult_const()

static void bench_ecmult_const ( void *  arg,
int  iters 
)
static

Definition at line 111 of file bench_ecmult.c.

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

◆ bench_ecmult_const_teardown()

static void bench_ecmult_const_teardown ( void *  arg,
int  iters 
)
static

Definition at line 120 of file bench_ecmult.c.

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

◆ bench_ecmult_gen()

static void bench_ecmult_gen ( void *  arg,
int  iters 
)
static

Definition at line 97 of file bench_ecmult.c.

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

◆ bench_ecmult_gen_teardown()

static void bench_ecmult_gen_teardown ( void *  arg,
int  iters 
)
static

Definition at line 106 of file bench_ecmult.c.

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

◆ bench_ecmult_multi()

static void bench_ecmult_multi ( void *  arg,
int  iters 
)
static

Definition at line 197 of file bench_ecmult.c.

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

◆ bench_ecmult_multi_callback()

static int bench_ecmult_multi_callback ( secp256k1_scalar sc,
secp256k1_ge ge,
size_t  idx,
void *  arg 
)
static

Definition at line 184 of file bench_ecmult.c.

Here is the caller graph for this function:

◆ bench_ecmult_multi_setup()

static void bench_ecmult_multi_setup ( void *  arg)
static

Definition at line 212 of file bench_ecmult.c.

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

◆ bench_ecmult_multi_teardown()

static void bench_ecmult_multi_teardown ( void *  arg,
int  iters 
)
static

Definition at line 217 of file bench_ecmult.c.

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

◆ bench_ecmult_setup()

static void bench_ecmult_setup ( void *  arg)
static

Definition at line 90 of file bench_ecmult.c.

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

◆ bench_ecmult_teardown_helper()

static void bench_ecmult_teardown_helper ( bench_data data,
size_t *  seckey_offset,
size_t *  scalar_offset,
size_t *  scalar_gen_offset,
int  iters 
)
static

Definition at line 68 of file bench_ecmult.c.

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

◆ generate_scalar()

static void generate_scalar ( uint32_t  num,
secp256k1_scalar scalar 
)
static

Definition at line 229 of file bench_ecmult.c.

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

◆ hash_into_offset()

static void hash_into_offset ( bench_data data,
size_t  x 
)
static

Definition at line 61 of file bench_ecmult.c.

Here is the caller graph for this function:

◆ help()

static void help ( char **  argv)
static

Definition at line 21 of file bench_ecmult.c.

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

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 276 of file bench_ecmult.c.

Here is the call graph for this function:

◆ run_ecmult_bench()

static void run_ecmult_bench ( bench_data data,
int  iters 
)
static

Definition at line 167 of file bench_ecmult.c.

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

◆ run_ecmult_multi_bench()

static void run_ecmult_multi_bench ( bench_data data,
size_t  count,
int  includes_g,
int  num_iters 
)
static

Definition at line 245 of file bench_ecmult.c.

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