Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Internal::PipelineFeatures Struct Reference

#include <Featurization.h>

Public Types

enum class  OpType {
  Const , Cast , Variable , Param ,
  Add , Sub , Mod , Mul ,
  Div , Min , Max , EQ ,
  NE , LT , LE , And ,
  Or , Not , Select , ImageCall ,
  FuncCall , SelfCall , ExternCall , Let ,
  NumOpTypes , Const , Cast , Variable ,
  Param , Add , Sub , Mod ,
  Mul , Div , Min , Max ,
  EQ , NE , LT , LE ,
  And , Or , Not , Select ,
  ImageCall , FuncCall , SelfCall , ExternCall ,
  Let , NumOpTypes
}
 
enum class  ScalarType {
  Bool , UInt8 , UInt16 , UInt32 ,
  UInt64 , Float , Double , NumScalarTypes ,
  Bool , UInt8 , UInt16 , UInt32 ,
  UInt64 , Float , Double , NumScalarTypes
}
 
enum class  AccessType {
  LoadFunc , LoadSelf , LoadImage , Store ,
  NumAccessTypes , LoadFunc , LoadSelf , LoadImage ,
  Store , NumAccessTypes
}
 
enum class  OpType {
  Const , Cast , Variable , Param ,
  Add , Sub , Mod , Mul ,
  Div , Min , Max , EQ ,
  NE , LT , LE , And ,
  Or , Not , Select , ImageCall ,
  FuncCall , SelfCall , ExternCall , Let ,
  NumOpTypes , Const , Cast , Variable ,
  Param , Add , Sub , Mod ,
  Mul , Div , Min , Max ,
  EQ , NE , LT , LE ,
  And , Or , Not , Select ,
  ImageCall , FuncCall , SelfCall , ExternCall ,
  Let , NumOpTypes
}
 
enum class  ScalarType {
  Bool , UInt8 , UInt16 , UInt32 ,
  UInt64 , Float , Double , NumScalarTypes ,
  Bool , UInt8 , UInt16 , UInt32 ,
  UInt64 , Float , Double , NumScalarTypes
}
 
enum class  AccessType {
  LoadFunc , LoadSelf , LoadImage , Store ,
  NumAccessTypes , LoadFunc , LoadSelf , LoadImage ,
  Store , NumAccessTypes
}
 

Public Member Functions

int & operator[] (int idx)
 
int operator[] (int idx) const
 
void dump (std::ostream &os) const
 
int & operator[] (int idx)
 
int operator[] (int idx) const
 
template<typename OS >
void dump (OS &os) const
 
void dump () const
 

Static Public Member Functions

static constexpr size_t num_features ()
 
static constexpr uint32_t version ()
 
static constexpr size_t num_features ()
 
static constexpr uint32_t version ()
 

Public Attributes

int types_in_use [(int) ScalarType::NumScalarTypes] = {}
 
int op_histogram [(int) OpType::NumOpTypes][(int) ScalarType::NumScalarTypes] = {}
 
int pointwise_accesses [(int) AccessType::NumAccessTypes][(int) ScalarType::NumScalarTypes] = {}
 
int transpose_accesses [(int) AccessType::NumAccessTypes][(int) ScalarType::NumScalarTypes] = {}
 
int broadcast_accesses [(int) AccessType::NumAccessTypes][(int) ScalarType::NumScalarTypes] = {}
 
int slice_accesses [(int) AccessType::NumAccessTypes][(int) ScalarType::NumScalarTypes] = {}
 

Detailed Description

Definition at line 15 of file Featurization.h.

Member Enumeration Documentation

◆ OpType [1/2]

Enumerator
Const 
Cast 
Variable 
Param 
Add 
Sub 
Mod 
Mul 
Div 
Min 
Max 
EQ 
NE 
LT 
LE 
And 
Or 
Not 
Select 
ImageCall 
FuncCall 
SelfCall 
ExternCall 
Let 
NumOpTypes 
Const 
Cast 
Variable 
Param 
Add 
Sub 
Mod 
Mul 
Div 
Min 
Max 
EQ 
NE 
LT 
LE 
And 
Or 
Not 
Select 
ImageCall 
FuncCall 
SelfCall 
ExternCall 
Let 
NumOpTypes 

Definition at line 31 of file Featurization.h.

◆ ScalarType [1/2]

Enumerator
Bool 
UInt8 
UInt16 
UInt32 
UInt64 
Float 
Double 
NumScalarTypes 
Bool 
UInt8 
UInt16 
UInt32 
UInt64 
Float 
Double 
NumScalarTypes 

Definition at line 59 of file Featurization.h.

◆ AccessType [1/2]

Enumerator
LoadFunc 
LoadSelf 
LoadImage 
Store 
NumAccessTypes 
LoadFunc 
LoadSelf 
LoadImage 
Store 
NumAccessTypes 

Definition at line 75 of file Featurization.h.

◆ OpType [2/2]

Enumerator
Const 
Cast 
Variable 
Param 
Add 
Sub 
Mod 
Mul 
Div 
Min 
Max 
EQ 
NE 
LT 
LE 
And 
Or 
Not 
Select 
ImageCall 
FuncCall 
SelfCall 
ExternCall 
Let 
NumOpTypes 
Const 
Cast 
Variable 
Param 
Add 
Sub 
Mod 
Mul 
Div 
Min 
Max 
EQ 
NE 
LT 
LE 
And 
Or 
Not 
Select 
ImageCall 
FuncCall 
SelfCall 
ExternCall 
Let 
NumOpTypes 

Definition at line 33 of file Featurization.h.

◆ ScalarType [2/2]

Enumerator
Bool 
UInt8 
UInt16 
UInt32 
UInt64 
Float 
Double 
NumScalarTypes 
Bool 
UInt8 
UInt16 
UInt32 
UInt64 
Float 
Double 
NumScalarTypes 

Definition at line 61 of file Featurization.h.

◆ AccessType [2/2]

Enumerator
LoadFunc 
LoadSelf 
LoadImage 
Store 
NumAccessTypes 
LoadFunc 
LoadSelf 
LoadImage 
Store 
NumAccessTypes 

Definition at line 77 of file Featurization.h.

Member Function Documentation

◆ num_features() [1/2]

static constexpr size_t Halide::Internal::PipelineFeatures::num_features ( )
inlinestaticconstexpr

Definition at line 14 of file Featurization.h.

◆ version() [1/2]

static constexpr uint32_t Halide::Internal::PipelineFeatures::version ( )
inlinestaticconstexpr

Definition at line 18 of file Featurization.h.

◆ operator[]() [1/4]

int & Halide::Internal::PipelineFeatures::operator[] ( int idx)
inline

Definition at line 23 of file Featurization.h.

◆ operator[]() [2/4]

int Halide::Internal::PipelineFeatures::operator[] ( int idx) const
inline

Definition at line 27 of file Featurization.h.

◆ dump() [1/3]

void Halide::Internal::PipelineFeatures::dump ( std::ostream & os) const
inline

◆ num_features() [2/2]

static constexpr size_t Halide::Internal::PipelineFeatures::num_features ( )
inlinestaticconstexpr

Definition at line 16 of file Featurization.h.

◆ version() [2/2]

static constexpr uint32_t Halide::Internal::PipelineFeatures::version ( )
inlinestaticconstexpr

Definition at line 20 of file Featurization.h.

◆ operator[]() [3/4]

int & Halide::Internal::PipelineFeatures::operator[] ( int idx)
inline

Definition at line 25 of file Featurization.h.

◆ operator[]() [4/4]

int Halide::Internal::PipelineFeatures::operator[] ( int idx) const
inline

Definition at line 29 of file Featurization.h.

◆ dump() [2/3]

template<typename OS >
void Halide::Internal::PipelineFeatures::dump ( OS & os) const
inline

◆ dump() [3/3]

void Halide::Internal::PipelineFeatures::dump ( ) const
inline

Definition at line 160 of file Featurization.h.

References dump().

Referenced by dump().

Member Data Documentation

◆ types_in_use

int Halide::Internal::PipelineFeatures::types_in_use = {}

Definition at line 71 of file Featurization.h.

Referenced by dump(), and dump().

◆ op_histogram

int Halide::Internal::PipelineFeatures::op_histogram = {}

Definition at line 73 of file Featurization.h.

Referenced by dump(), and dump().

◆ pointwise_accesses

int Halide::Internal::PipelineFeatures::pointwise_accesses = {}

Definition at line 92 of file Featurization.h.

Referenced by dump(), and dump().

◆ transpose_accesses

int Halide::Internal::PipelineFeatures::transpose_accesses = {}

Definition at line 94 of file Featurization.h.

Referenced by dump(), and dump().

◆ broadcast_accesses

int Halide::Internal::PipelineFeatures::broadcast_accesses = {}

Definition at line 96 of file Featurization.h.

Referenced by dump(), and dump().

◆ slice_accesses

int Halide::Internal::PipelineFeatures::slice_accesses = {}

Definition at line 98 of file Featurization.h.

Referenced by dump(), and dump().


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