Project
Loading...
Searching...
No Matches
benchmark_Types.cxx File Reference
#include <TObjArray.h>
#include <TH1.h>
#include <TH2.h>
#include <TH3.h>
#include <TTree.h>
#include <THnSparse.h>
#include <TF1.h>
#include <TF2.h>
#include <TF3.h>
#include <TRandom.h>
#include <TRandomGen.h>
#include <chrono>
#include <ctime>
#include <TMessage.h>
#include "Framework/TMessageSerializer.h"
#include <type_traits>
#include <iostream>
#include <fstream>
#include <boost/archive/binary_iarchive.hpp>
#include <boost/archive/binary_oarchive.hpp>
#include <boost/histogram.hpp>
#include <boost/histogram/serialization.hpp>
#include <sstream>

Go to the source code of this file.

Classes

struct  Results
 
struct  Parameters
 

Macros

#define BM_BOOST1DARRAY_FOR(objSize, entries)
 
#define BM_BOOST1DVECTOR_FOR(objSize, entries)
 
#define BM_BOOST2DARRAY_FOR(objSize, arrSize, entries)
 
#define BM_BOOST2DVECTOR_FOR(objSize, entries)
 

Enumerations

enum class  Measurement {
  Size , SizeAfterSerialisation , Deserialisation , Merging ,
  Serialisation
}
 

Functions

void printHeaderCSV (std::ostream &out)
 
void printResultsCSV (std::ostream &out, std::string name, const Parameters &p, const std::vector< Results > &results)
 
int main (int argc, const char *argv[])
 

Variables

auto measure
 

Macro Definition Documentation

◆ BM_BOOST1DARRAY_FOR

#define BM_BOOST1DARRAY_FOR (   objSize,
  entries 
)
Value:
{ \
constexpr auto p = Parameters::forHistograms(objSize, entries); \
auto results = BM_BoostRegular1D<std::array<int32_t, p.objectSize / sizeof(int32_t) + 2>>(repetitions, p); \
printResultsCSV(file, "BoostRegular1DArray", p, results); \
printResultsCSV(std::cout, "BoostRegular1DArray", p, results); \
}
static constexpr Parameters forHistograms(size_t objectSize, size_t entries)

◆ BM_BOOST1DVECTOR_FOR

#define BM_BOOST1DVECTOR_FOR (   objSize,
  entries 
)
Value:
{ \
constexpr auto p = Parameters::forHistograms(objSize, entries); \
auto results = BM_BoostRegular1D<std::vector<int32_t>>(repetitions, p); \
printResultsCSV(file, "BoostRegular1DVector", p, results); \
printResultsCSV(std::cout, "BoostRegular1DVector", p, results); \
}

◆ BM_BOOST2DARRAY_FOR

#define BM_BOOST2DARRAY_FOR (   objSize,
  arrSize,
  entries 
)
Value:
{ \
constexpr auto p = Parameters::forHistograms(objSize, entries); \
auto results = BM_BoostRegular2D<std::array<int32_t, arrSize>>(repetitions, p); \
printResultsCSV(file, "BoostRegular2DArray", p, results); \
printResultsCSV(std::cout, "BoostRegular2DArray", p, results); \
}

◆ BM_BOOST2DVECTOR_FOR

#define BM_BOOST2DVECTOR_FOR (   objSize,
  entries 
)
Value:
{ \
constexpr auto p = Parameters::forHistograms(objSize, entries); \
auto results = BM_BoostRegular2D<std::vector<int32_t>>(repetitions, p); \
printResultsCSV(file, "BoostRegular2DVector", p, results); \
printResultsCSV(std::cout, "BoostRegular2DVector", p, results); \
}

Enumeration Type Documentation

◆ Measurement

enum class Measurement
strong
Enumerator
Size 
SizeAfterSerialisation 
Deserialisation 
Merging 
Serialisation 

Definition at line 42 of file benchmark_Types.cxx.

Function Documentation

◆ main()

int main ( int  argc,
const char argv[] 
)

Definition at line 535 of file benchmark_Types.cxx.

◆ printHeaderCSV()

void printHeaderCSV ( std::ostream &  out)

Definition at line 517 of file benchmark_Types.cxx.

◆ printResultsCSV()

void printResultsCSV ( std::ostream &  out,
std::string  name,
const Parameters p,
const std::vector< Results > &  results 
)

Definition at line 525 of file benchmark_Types.cxx.

Variable Documentation

◆ measure

auto measure

Definition at line 79 of file benchmark_Types.cxx.