Tensor Comprehensions
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
tc::autotune::Printer Class Reference

#include <printer.h>

Collaboration diagram for tc::autotune::Printer:

Public Member Functions

 Printer (size_t generation, size_t total, const std::atomic_size_t &currentCompilationJob, const std::atomic_size_t &numEvaluations)
 
 ~Printer ()
 
void record (Duration runtime)
 
void stop ()
 
void printAll ()
 

Private Member Functions

void printLoop ()
 

Private Attributes

size_t generation_
 
std::vector< Durationruntimes_
 
std::mutex runtimesMtx_
 
std::atomic_bool stopPrinting_ {false}
 
std::thread printerThread_
 
const size_t total_
 
const std::atomic_size_t & currentCompilationJob_
 
const std::atomic_size_t & numEvaluations_
 

Detailed Description

Helper class to pretty print autotuning progress

Constructor & Destructor Documentation

tc::autotune::Printer::Printer ( size_t  generation,
size_t  total,
const std::atomic_size_t &  currentCompilationJob,
const std::atomic_size_t &  numEvaluations 
)
tc::autotune::Printer::~Printer ( )

Member Function Documentation

void tc::autotune::Printer::printAll ( )
void tc::autotune::Printer::printLoop ( )
private
void tc::autotune::Printer::record ( Duration  runtime)
void tc::autotune::Printer::stop ( )

Member Data Documentation

const std::atomic_size_t& tc::autotune::Printer::currentCompilationJob_
private
size_t tc::autotune::Printer::generation_
private
const std::atomic_size_t& tc::autotune::Printer::numEvaluations_
private
std::thread tc::autotune::Printer::printerThread_
private
std::vector<Duration> tc::autotune::Printer::runtimes_
private
std::mutex tc::autotune::Printer::runtimesMtx_
mutableprivate
std::atomic_bool tc::autotune::Printer::stopPrinting_ {false}
private
const size_t tc::autotune::Printer::total_
private

The documentation for this class was generated from the following file: