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 143 of file Timing_test.cpp.

Member Typedef Documentation

◆ clock_type

Definition at line 158 of file Timing_test.cpp.

◆ duration_type

Definition at line 159 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 673 of file Timing_test.cpp.

◆ test_list

Definition at line 674 of file Timing_test.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
missingNodePercent 

Definition at line 146 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 168 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 178 of file Timing_test.cpp.

◆ parse()

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

Definition at line 186 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 235 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 251 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 269 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 326 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 397 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 470 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 562 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 677 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 690 of file Timing_test.cpp.

◆ run()

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

Definition at line 737 of file Timing_test.cpp.

Member Data Documentation

◆ default_repeat

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

Definition at line 151 of file Timing_test.cpp.

◆ default_items

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

Definition at line 153 of file Timing_test.cpp.