#include <iostream>
#include <cstdint>
#include <cstdlib>
#include <vector>
#include <fstream>
#include <memory>
#include <cstdio>
#include <Eigen/Core>
#include <bench/BenchTimer.h>
Go to the source code of this file.
Classes | |
struct | action_t |
struct | benchmark_t |
struct | human_duration_t |
struct | measure_all_pot_sizes_action_t |
struct | measure_default_sizes_action_t |
struct | size_triple_t |
Typedefs | |
typedef MatrixXf | MatrixType |
typedef internal::packet_traits< Scalar >::type | Packet |
typedef MatrixType::Scalar | Scalar |
Functions | |
uint16_t | compact_size_triple (const size_triple_t &t) |
uint16_t | compact_size_triple (size_t k, size_t m, size_t n) |
bool | deserialize_benchmarks (const char *filename, vector< benchmark_t > &benchmarks, size_t &first_benchmark_to_run) |
uint8_t | log2_pot (size_t x) |
int | main (int argc, char *argv[]) |
float | measure_clock_speed () |
bool | operator< (const benchmark_t &b1, const benchmark_t &b2) |
ostream & | operator<< (ostream &s, const benchmark_t &b) |
ostream & | operator<< (ostream &s, const human_duration_t &d) |
void | print_cpuinfo () |
void | run_benchmarks (vector< benchmark_t > &benchmarks) |
void | serialize_benchmarks (const char *filename, const vector< benchmark_t > &benchmarks, size_t first_benchmark_to_run) |
void | show_usage_and_exit (int, char *argv[], const vector< unique_ptr< action_t >> &available_actions) |
void | try_run_some_benchmarks (vector< benchmark_t > &benchmarks, double time_start, size_t &first_benchmark_to_run) |
template<typename T > | |
string | type_name () |
template<> | |
string | type_name< double > () |
template<> | |
string | type_name< float > () |
Variables | |
int | eigen_block_size_k |
int | eigen_block_size_m |
int | eigen_block_size_n |
bool | eigen_use_specific_block_size |
float | max_clock_speed = 0.0f |
const size_t | maxsize = 2048 |
const int | measurement_repetitions = 3 |
const float | min_accurate_time = 1e-2f |
size_t | min_working_set_size = 0 |
const size_t | minsize = 16 |
const char | session_filename [] = "/data/local/tmp/benchmark-blocking-sizes-session.data" |
static BenchTimer | timer |
#define EIGEN_TEST_SPECIFIC_BLOCKING_SIZE_K eigen_block_size_k |
Definition at line 21 of file benchmark-blocking-sizes.cpp.
#define EIGEN_TEST_SPECIFIC_BLOCKING_SIZE_M eigen_block_size_m |
Definition at line 22 of file benchmark-blocking-sizes.cpp.
#define EIGEN_TEST_SPECIFIC_BLOCKING_SIZE_N eigen_block_size_n |
Definition at line 23 of file benchmark-blocking-sizes.cpp.
#define EIGEN_TEST_SPECIFIC_BLOCKING_SIZES eigen_use_specific_block_size |
Definition at line 20 of file benchmark-blocking-sizes.cpp.
typedef MatrixXf MatrixType |
Definition at line 52 of file benchmark-blocking-sizes.cpp.
Definition at line 54 of file benchmark-blocking-sizes.cpp.
typedef MatrixType::Scalar Scalar |
Definition at line 53 of file benchmark-blocking-sizes.cpp.
uint16_t compact_size_triple | ( | const size_triple_t & | t | ) |
Definition at line 90 of file benchmark-blocking-sizes.cpp.
Definition at line 85 of file benchmark-blocking-sizes.cpp.
bool deserialize_benchmarks | ( | const char * | filename, |
vector< benchmark_t > & | benchmarks, | ||
size_t & | first_benchmark_to_run | ||
) |
Definition at line 361 of file benchmark-blocking-sizes.cpp.
Definition at line 76 of file benchmark-blocking-sizes.cpp.
Definition at line 621 of file benchmark-blocking-sizes.cpp.
float measure_clock_speed | ( | ) |
Definition at line 297 of file benchmark-blocking-sizes.cpp.
bool operator< | ( | const benchmark_t & | b1, |
const benchmark_t & | b2 | ||
) |
Definition at line 144 of file benchmark-blocking-sizes.cpp.
ostream& operator<< | ( | ostream & | s, |
const benchmark_t & | b | ||
) |
Definition at line 127 of file benchmark-blocking-sizes.cpp.
ostream& operator<< | ( | ostream & | s, |
const human_duration_t & | d | ||
) |
Definition at line 324 of file benchmark-blocking-sizes.cpp.
void print_cpuinfo | ( | ) |
Definition at line 231 of file benchmark-blocking-sizes.cpp.
void run_benchmarks | ( | vector< benchmark_t > & | benchmarks | ) |
Definition at line 501 of file benchmark-blocking-sizes.cpp.
void serialize_benchmarks | ( | const char * | filename, |
const vector< benchmark_t > & | benchmarks, | ||
size_t | first_benchmark_to_run | ||
) |
Definition at line 345 of file benchmark-blocking-sizes.cpp.
void show_usage_and_exit | ( | int | , |
char * | argv[], | ||
const vector< unique_ptr< action_t >> & | available_actions | ||
) |
Definition at line 276 of file benchmark-blocking-sizes.cpp.
void try_run_some_benchmarks | ( | vector< benchmark_t > & | benchmarks, |
double | time_start, | ||
size_t & | first_benchmark_to_run | ||
) |
Definition at line 385 of file benchmark-blocking-sizes.cpp.
string type_name | ( | ) |
Definition at line 252 of file benchmark-blocking-sizes.cpp.
string type_name< double > | ( | ) |
Definition at line 264 of file benchmark-blocking-sizes.cpp.
string type_name< float > | ( | ) |
Definition at line 258 of file benchmark-blocking-sizes.cpp.
int eigen_block_size_k |
Definition at line 19 of file benchmark-blocking-sizes.cpp.
int eigen_block_size_m |
Definition at line 19 of file benchmark-blocking-sizes.cpp.
int eigen_block_size_n |
Definition at line 19 of file benchmark-blocking-sizes.cpp.
bool eigen_use_specific_block_size |
Definition at line 18 of file benchmark-blocking-sizes.cpp.
float max_clock_speed = 0.0f |
Definition at line 46 of file benchmark-blocking-sizes.cpp.
const size_t maxsize = 2048 |
Definition at line 49 of file benchmark-blocking-sizes.cpp.
const int measurement_repetitions = 3 |
Definition at line 36 of file benchmark-blocking-sizes.cpp.
Definition at line 41 of file benchmark-blocking-sizes.cpp.
size_t min_working_set_size = 0 |
Definition at line 44 of file benchmark-blocking-sizes.cpp.
const size_t minsize = 16 |
Definition at line 50 of file benchmark-blocking-sizes.cpp.
const char session_filename[] = "/data/local/tmp/benchmark-blocking-sizes-session.data" |
Definition at line 343 of file benchmark-blocking-sizes.cpp.
|
static |
Definition at line 31 of file benchmark-blocking-sizes.cpp.