Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::DefaultCostModel Class Reference

#include <DefaultCostModel.h>

Inheritance diagram for Halide::DefaultCostModel:
Halide::CostModel Halide::CostModel

Public Member Functions

 DefaultCostModel (const std::string &weights_in_path, const std::string &weights_out_path, bool randomize_weights)
 
 ~DefaultCostModel () override=default
 
void set_pipeline_features (const Internal::Autoscheduler::FunctionDAG &dag, const Internal::Autoscheduler::Adams2019Params &params) override
 
void set_pipeline_features (const Runtime::Buffer< float > &, int n)
 
void enqueue (const Internal::Autoscheduler::FunctionDAG &dag, const Halide::Internal::Autoscheduler::StageMapOfScheduleFeatures &schedule_feats, double *cost_ptr) override
 
void enqueue (int ns, Runtime::Buffer< float > *schedule_feats, double *cost_ptr)
 
void evaluate_costs () override
 
void reset () override
 
float backprop (const Runtime::Buffer< const float > &true_runtimes, float learning_rate)
 
void save_weights ()
 
void load_weights ()
 
 DefaultCostModel (const std::string &weights_in_path, const std::string &weights_out_path, bool randomize_weights, Internal::Autoscheduler::Statistics &stats)
 
void set_pipeline_features (const Internal::Autoscheduler::FunctionDAG &dag, const Internal::Autoscheduler::Anderson2021Params &params) override
 
void set_pipeline_features (const Runtime::Buffer< float > &, int n)
 
void enqueue (const Internal::Autoscheduler::FunctionDAG &dag, const Halide::Internal::Autoscheduler::StageMapOfScheduleFeatures &schedule_feats, double *cost_ptr, std::vector< double > *cost_per_stage_ptr) override
 
void enqueue (int ns, Runtime::Buffer< float > *schedule_feats, double *cost_ptr, std::vector< double > *cost_per_stage_ptr)
 
void evaluate_costs () override
 
void reset () override
 
float backprop (const Runtime::Buffer< const float > &true_runtimes, float learning_rate)
 
void save_weights ()
 
void load_weights ()
 
- Public Member Functions inherited from Halide::CostModel
virtual ~CostModel ()=default
 
virtual ~CostModel ()=default
 

Detailed Description

Definition at line 11 of file DefaultCostModel.h.

Constructor & Destructor Documentation

◆ DefaultCostModel() [1/2]

Halide::DefaultCostModel::DefaultCostModel ( const std::string & weights_in_path,
const std::string & weights_out_path,
bool randomize_weights )
inline

Definition at line 33 of file DefaultCostModel.h.

References load_weights().

◆ ~DefaultCostModel()

Halide::DefaultCostModel::~DefaultCostModel ( )
overridedefault

◆ DefaultCostModel() [2/2]

Halide::DefaultCostModel::DefaultCostModel ( const std::string & weights_in_path,
const std::string & weights_out_path,
bool randomize_weights,
Internal::Autoscheduler::Statistics & stats )
inline

Definition at line 32 of file DefaultCostModel.h.

References load_weights().

Member Function Documentation

◆ set_pipeline_features() [1/4]

void Halide::DefaultCostModel::set_pipeline_features ( const Internal::Autoscheduler::FunctionDAG & dag,
const Internal::Autoscheduler::Adams2019Params & params )
overridevirtual

Implements Halide::CostModel.

◆ set_pipeline_features() [2/4]

void Halide::DefaultCostModel::set_pipeline_features ( const Runtime::Buffer< float > & ,
int n )

◆ enqueue() [1/4]

void Halide::DefaultCostModel::enqueue ( const Internal::Autoscheduler::FunctionDAG & dag,
const Halide::Internal::Autoscheduler::StageMapOfScheduleFeatures & schedule_feats,
double * cost_ptr )
overridevirtual

Implements Halide::CostModel.

◆ enqueue() [2/4]

void Halide::DefaultCostModel::enqueue ( int ns,
Runtime::Buffer< float > * schedule_feats,
double * cost_ptr )

◆ evaluate_costs() [1/2]

void Halide::DefaultCostModel::evaluate_costs ( )
overridevirtual

Implements Halide::CostModel.

◆ reset() [1/2]

void Halide::DefaultCostModel::reset ( )
overridevirtual

Implements Halide::CostModel.

◆ backprop() [1/2]

float Halide::DefaultCostModel::backprop ( const Runtime::Buffer< const float > & true_runtimes,
float learning_rate )

◆ save_weights() [1/2]

void Halide::DefaultCostModel::save_weights ( )

◆ load_weights() [1/2]

void Halide::DefaultCostModel::load_weights ( )

◆ set_pipeline_features() [3/4]

void Halide::DefaultCostModel::set_pipeline_features ( const Internal::Autoscheduler::FunctionDAG & dag,
const Internal::Autoscheduler::Anderson2021Params & params )
overridevirtual

Implements Halide::CostModel.

◆ set_pipeline_features() [4/4]

void Halide::DefaultCostModel::set_pipeline_features ( const Runtime::Buffer< float > & ,
int n )

◆ enqueue() [3/4]

void Halide::DefaultCostModel::enqueue ( const Internal::Autoscheduler::FunctionDAG & dag,
const Halide::Internal::Autoscheduler::StageMapOfScheduleFeatures & schedule_feats,
double * cost_ptr,
std::vector< double > * cost_per_stage_ptr )
overridevirtual

Implements Halide::CostModel.

◆ enqueue() [4/4]

void Halide::DefaultCostModel::enqueue ( int ns,
Runtime::Buffer< float > * schedule_feats,
double * cost_ptr,
std::vector< double > * cost_per_stage_ptr )

◆ evaluate_costs() [2/2]

void Halide::DefaultCostModel::evaluate_costs ( )
overridevirtual

Implements Halide::CostModel.

◆ reset() [2/2]

void Halide::DefaultCostModel::reset ( )
overridevirtual

Implements Halide::CostModel.

◆ backprop() [2/2]

float Halide::DefaultCostModel::backprop ( const Runtime::Buffer< const float > & true_runtimes,
float learning_rate )

◆ save_weights() [2/2]

void Halide::DefaultCostModel::save_weights ( )

◆ load_weights() [2/2]

void Halide::DefaultCostModel::load_weights ( )

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