rippled
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
ripple::NodeStore::Timing_test Class Reference
Inheritance diagram for ripple::NodeStore::Timing_test:
Inheritance graph
[legend]
Collaboration diagram for ripple::NodeStore::Timing_test:
Collaboration graph
[legend]

Classes

class  parallel_for_lambda
 
struct  Params
 

Public Types

enum  { missingNodePercent = 20 }
 
using clock_type = std::chrono::steady_clock
 
using duration_type = std::chrono::milliseconds
 
using test_func = void(Timing_test::*)(Section const &, Params const &, beast::Journal)
 
using test_list = std::vector< std::pair< std::string, test_func > >
 

Public Member Functions

template<class Body , class... Args>
void parallel_for (std::size_t const n, std::size_t number_of_threads, Args const &... args)
 
template<class Body , class... Args>
void parallel_for_id (std::size_t const n, std::size_t number_of_threads, Args const &... args)
 
void do_insert (Section const &config, Params const &params, beast::Journal journal)
 
void do_fetch (Section const &config, Params const &params, beast::Journal journal)
 
void do_missing (Section const &config, Params const &params, beast::Journal journal)
 
void do_mixed (Section const &config, Params const &params, beast::Journal journal)
 
void do_work (Section const &config, Params const &params, beast::Journal journal)
 
duration_type do_test (test_func f, Section const &config, Params const &params, beast::Journal journal)
 
void do_tests (std::size_t threads, test_list const &tests, std::vector< std::string > const &config_strings)
 
void run () override
 

Static Public Member Functions

static std::string to_string (Section const &config)
 
static std::string to_string (duration_type const &d)
 
static Section parse (std::string s)
 

Public Attributes

const std::size_t default_repeat = 3
 
const std::size_t default_items = 10000
 

Detailed Description

Definition at line 132 of file Timing_test.cpp.

Member Typedef Documentation

◆ clock_type

Definition at line 147 of file Timing_test.cpp.

◆ duration_type

Definition at line 148 of file Timing_test.cpp.

◆ test_func

using ripple::NodeStore::Timing_test::test_func = void (Timing_test::*)(Section const&, Params const&, beast::Journal)

Definition at line 662 of file Timing_test.cpp.

◆ test_list

Definition at line 663 of file Timing_test.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
missingNodePercent 

Definition at line 135 of file Timing_test.cpp.

Member Function Documentation

◆ to_string() [1/2]

static std::string ripple::NodeStore::Timing_test::to_string ( Section const &  config)
static

Definition at line 157 of file Timing_test.cpp.

◆ to_string() [2/2]

static std::string ripple::NodeStore::Timing_test::to_string ( duration_type const &  d)
static

Definition at line 167 of file Timing_test.cpp.

◆ parse()

static Section ripple::NodeStore::Timing_test::parse ( std::string  s)
static

Definition at line 175 of file Timing_test.cpp.

◆ parallel_for()

template<class Body , class... Args>
void ripple::NodeStore::Timing_test::parallel_for ( std::size_t const  n,
std::size_t  number_of_threads,
Args const &...  args 
)

Definition at line 224 of file Timing_test.cpp.

◆ parallel_for_id()

template<class Body , class... Args>
void ripple::NodeStore::Timing_test::parallel_for_id ( std::size_t const  n,
std::size_t  number_of_threads,
Args const &...  args 
)

Definition at line 240 of file Timing_test.cpp.

◆ do_insert()

void ripple::NodeStore::Timing_test::do_insert ( Section const &  config,
Params const &  params,
beast::Journal  journal 
)

Definition at line 258 of file Timing_test.cpp.

◆ do_fetch()

void ripple::NodeStore::Timing_test::do_fetch ( Section const &  config,
Params const &  params,
beast::Journal  journal 
)

Definition at line 315 of file Timing_test.cpp.

◆ do_missing()

void ripple::NodeStore::Timing_test::do_missing ( Section const &  config,
Params const &  params,
beast::Journal  journal 
)

Definition at line 386 of file Timing_test.cpp.

◆ do_mixed()

void ripple::NodeStore::Timing_test::do_mixed ( Section const &  config,
Params const &  params,
beast::Journal  journal 
)

Definition at line 459 of file Timing_test.cpp.

◆ do_work()

void ripple::NodeStore::Timing_test::do_work ( Section const &  config,
Params const &  params,
beast::Journal  journal 
)

Definition at line 551 of file Timing_test.cpp.

◆ do_test()

duration_type ripple::NodeStore::Timing_test::do_test ( test_func  f,
Section const &  config,
Params const &  params,
beast::Journal  journal 
)

Definition at line 666 of file Timing_test.cpp.

◆ do_tests()

void ripple::NodeStore::Timing_test::do_tests ( std::size_t  threads,
test_list const &  tests,
std::vector< std::string > const &  config_strings 
)

Definition at line 679 of file Timing_test.cpp.

◆ run()

void ripple::NodeStore::Timing_test::run ( )
override

Definition at line 726 of file Timing_test.cpp.

Member Data Documentation

◆ default_repeat

const std::size_t ripple::NodeStore::Timing_test::default_repeat = 3

Definition at line 140 of file Timing_test.cpp.

◆ default_items

const std::size_t ripple::NodeStore::Timing_test::default_items = 10000

Definition at line 142 of file Timing_test.cpp.