TR-mbed 1.0
Loading...
Searching...
No Matches
Classes | Functions | Variables
analyze-blocking-sizes.cpp File Reference
#include <iostream>
#include <cstdint>
#include <cstdlib>
#include <vector>
#include <algorithm>
#include <fstream>
#include <string>
#include <cmath>
#include <cassert>
#include <cstring>
#include <memory>
#include <Eigen/Core>

Classes

struct  size_triple_t
 
struct  inputfile_entry_t
 
struct  inputfile_t
 
struct  preprocessed_inputfile_entry_t
 
struct  preprocessed_inputfile_t
 
struct  action_t
 
struct  partition_action_t
 
struct  evaluate_defaults_action_t
 
struct  evaluate_defaults_action_t::results_entry_t
 

Functions

uint8_t log2_pot (size_t x)
 
uint16_t compact_size_triple (size_t k, size_t m, size_t n)
 
ostream & operator<< (ostream &s, const size_triple_t &t)
 
bool lower_efficiency (const preprocessed_inputfile_entry_t &e1, const preprocessed_inputfile_entry_t &e2)
 
void check_all_files_in_same_exact_order (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles)
 
float efficiency_of_subset (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles, const vector< size_t > &subset)
 
void dump_table_for_subset (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles, const vector< size_t > &subset)
 
float efficiency_of_partition (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles, const vector< vector< size_t > > &partition)
 
void make_first_subset (size_t subset_size, vector< size_t > &out_subset, size_t set_size)
 
bool is_last_subset (const vector< size_t > &subset, size_t set_size)
 
void next_subset (vector< size_t > &inout_subset, size_t set_size)
 
bool is_number_of_subsets_feasible (size_t n, size_t p)
 
size_t max_feasible_subset_size (size_t n)
 
void find_subset_with_efficiency_higher_than (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles, float required_efficiency_to_beat, vector< size_t > &inout_remainder, vector< size_t > &out_subset)
 
void find_partition_with_efficiency_higher_than (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles, float required_efficiency_to_beat, vector< vector< size_t > > &out_partition)
 
void print_partition (const vector< preprocessed_inputfile_t > &preprocessed_inputfiles, const vector< vector< size_t > > &partition)
 
void show_usage_and_exit (int argc, char *argv[], const vector< unique_ptr< action_t > > &available_actions)
 
int main (int argc, char *argv[])
 

Variables

const int default_precision = 4
 
bool only_cubic_sizes = false
 
bool dump_tables = false
 
const size_t number_of_subsets_limit = 100
 
const size_t always_search_subsets_of_size_at_least = 2
 

Function Documentation

◆ check_all_files_in_same_exact_order()

void check_all_files_in_same_exact_order ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles)

◆ compact_size_triple()

uint16_t compact_size_triple ( size_t  k,
size_t  m,
size_t  n 
)

◆ dump_table_for_subset()

void dump_table_for_subset ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles,
const vector< size_t > &  subset 
)

◆ efficiency_of_partition()

float efficiency_of_partition ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles,
const vector< vector< size_t > > &  partition 
)

◆ efficiency_of_subset()

float efficiency_of_subset ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles,
const vector< size_t > &  subset 
)

◆ find_partition_with_efficiency_higher_than()

void find_partition_with_efficiency_higher_than ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles,
float  required_efficiency_to_beat,
vector< vector< size_t > > &  out_partition 
)

◆ find_subset_with_efficiency_higher_than()

void find_subset_with_efficiency_higher_than ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles,
float  required_efficiency_to_beat,
vector< size_t > &  inout_remainder,
vector< size_t > &  out_subset 
)

◆ is_last_subset()

bool is_last_subset ( const vector< size_t > &  subset,
size_t  set_size 
)

◆ is_number_of_subsets_feasible()

bool is_number_of_subsets_feasible ( size_t  n,
size_t  p 
)

◆ log2_pot()

uint8_t log2_pot ( size_t  x)

◆ lower_efficiency()

bool lower_efficiency ( const preprocessed_inputfile_entry_t e1,
const preprocessed_inputfile_entry_t e2 
)

◆ main()

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

◆ make_first_subset()

void make_first_subset ( size_t  subset_size,
vector< size_t > &  out_subset,
size_t  set_size 
)

◆ max_feasible_subset_size()

size_t max_feasible_subset_size ( size_t  n)

◆ next_subset()

void next_subset ( vector< size_t > &  inout_subset,
size_t  set_size 
)

◆ operator<<()

ostream & operator<< ( ostream &  s,
const size_triple_t t 
)

◆ print_partition()

void print_partition ( const vector< preprocessed_inputfile_t > &  preprocessed_inputfiles,
const vector< vector< size_t > > &  partition 
)

◆ show_usage_and_exit()

void show_usage_and_exit ( int  argc,
char *  argv[],
const vector< unique_ptr< action_t > > &  available_actions 
)

Variable Documentation

◆ always_search_subsets_of_size_at_least

const size_t always_search_subsets_of_size_at_least = 2

◆ default_precision

const int default_precision = 4

◆ dump_tables

bool dump_tables = false

◆ number_of_subsets_limit

const size_t number_of_subsets_limit = 100

◆ only_cubic_sizes

bool only_cubic_sizes = false