Halide
Halide::Internal::Autoscheduler Namespace Reference

Classes

struct  BoundContents
 
struct  FunctionDAG
 
class  LoadJacobian
 
struct  LoopNest
 
struct  OptionalRational
 
class  Span
 

Typedefs

typedef PerfectHashMap< FunctionDAG::Node::Stage, ScheduleFeaturesStageMapOfScheduleFeatures
 
using Bound = IntrusivePtr< const BoundContents >
 
template<typename T >
using NodeMap = PerfectHashMap< FunctionDAG::Node, T >
 
template<typename T >
using StageMap = PerfectHashMap< FunctionDAG::Node::Stage, T >
 

Functions

void find_and_apply_schedule (FunctionDAG &dag, const std::vector< Function > &outputs, const MachineParams &params, CostModel *cost_model, int beam_size, StageMapOfScheduleFeatures *schedule_features)
 
bool may_subtile ()
 
std::vector< std::vector< int64_t > > generate_tilings (const vector< int64_t > &s, int d, int factor, bool allow_splits)
 

Typedef Documentation

◆ StageMapOfScheduleFeatures

◆ Bound

Definition at line 341 of file FunctionDAG.h.

◆ NodeMap

Definition at line 19 of file LoopNest.h.

◆ StageMap

Definition at line 22 of file LoopNest.h.

Function Documentation

◆ find_and_apply_schedule()

void Halide::Internal::Autoscheduler::find_and_apply_schedule ( FunctionDAG dag,
const std::vector< Function > &  outputs,
const MachineParams params,
CostModel cost_model,
int  beam_size,
StageMapOfScheduleFeatures schedule_features 
)

◆ may_subtile()

bool Halide::Internal::Autoscheduler::may_subtile ( )

◆ generate_tilings()

std::vector<std::vector<int64_t> > Halide::Internal::Autoscheduler::generate_tilings ( const vector< int64_t > &  s,
int  d,
int  factor,
bool  allow_splits 
)