RecFilter
|
Recursive filter function with scheduling interface. More...
#include <recfilter_internals.h>
Data Fields | |
Halide::Internal::Function | func |
Halide function. More... | |
FuncTag | func_category |
Category tag for the function. More... | |
std::map< std::string, VarTag > | pure_var_category |
Category tags for all the pure def vars. More... | |
std::vector< std::map< std::string, VarTag > > | update_var_category |
Category tags for all the vars in all the update defs. More... | |
std::map< std::string, std::string > | pure_var_splits |
List of new vars created by RecFilterSchedule::split() on pure definition. More... | |
std::map< int, std::map< std::string, std::string > > | update_var_splits |
List of new vars created by RecFilterSchedule::split() on update definitions. More... | |
std::string | consumer_func |
Name of consumer function. More... | |
std::string | producer_func |
Name of producer function. More... | |
Halide::Func | external_consumer_func |
External consumer function which consumes RecFilter's output; external consumer means a Func outside the RecFilter pipeline that consumes the output of the RecFilter. More... | |
Halide::Var | external_consumer_var |
External consumer function's loop level at which the RecFilter's output is consumed; external consumer means a Func outside the RecFilter pipeline that consumes the output of the RecFilter. More... | |
std::vector< std::string > | pure_schedule |
Schedule for pure def of the function as valid Halide code. More... | |
std::map< int, std::vector< std::string > > | update_schedule |
Schedule for update defs of the function as valid Halide code. More... | |
Recursive filter function with scheduling interface.
Definition at line 89 of file recfilter_internals.h.
Halide::Internal::Function RecFilterFunc::func |
Halide function.
Definition at line 92 of file recfilter_internals.h.
FuncTag RecFilterFunc::func_category |
Category tag for the function.
Definition at line 95 of file recfilter_internals.h.
std::map<std::string, VarTag> RecFilterFunc::pure_var_category |
Category tags for all the pure def vars.
Definition at line 98 of file recfilter_internals.h.
std::vector<std::map<std::string,VarTag> > RecFilterFunc::update_var_category |
Category tags for all the vars in all the update defs.
Definition at line 101 of file recfilter_internals.h.
std::map<std::string, std::string> RecFilterFunc::pure_var_splits |
List of new vars created by RecFilterSchedule::split() on pure definition.
Definition at line 104 of file recfilter_internals.h.
std::map<int, std::map<std::string, std::string> > RecFilterFunc::update_var_splits |
List of new vars created by RecFilterSchedule::split() on update definitions.
Definition at line 107 of file recfilter_internals.h.
std::string RecFilterFunc::consumer_func |
Name of consumer function.
This can be set if this function has REINDEX tag set because only REINDEX functions are guaranteed to have a single consumer
Definition at line 111 of file recfilter_internals.h.
std::string RecFilterFunc::producer_func |
Name of producer function.
This can be set if this function has REINDEX tag set because only REINDEX functions are guaranteed to have a single producer
Definition at line 115 of file recfilter_internals.h.
Halide::Func RecFilterFunc::external_consumer_func |
External consumer function which consumes RecFilter's output; external consumer means a Func outside the RecFilter pipeline that consumes the output of the RecFilter.
This is set by RecFilter::compute_at() and is useful for merging the final stage of the recfilter and initial stage of next filter. This can be set if this function has REINDEX tag set; only REINDEX functions are guaranteed to have a single consumer
Definition at line 123 of file recfilter_internals.h.
Halide::Var RecFilterFunc::external_consumer_var |
External consumer function's loop level at which the RecFilter's output is consumed; external consumer means a Func outside the RecFilter pipeline that consumes the output of the RecFilter.
This is set by RecFilter::compute_at() and is useful for merging the final stage of the recfilter and initial stage of next filter. This can be set if this function has REINDEX tag set; only REINDEX functions are guaranteed to have a single consumer
Definition at line 131 of file recfilter_internals.h.
std::vector<std::string> RecFilterFunc::pure_schedule |
Schedule for pure def of the function as valid Halide code.
Definition at line 134 of file recfilter_internals.h.
std::map<int, std::vector<std::string> > RecFilterFunc::update_schedule |
Schedule for update defs of the function as valid Halide code.
Definition at line 137 of file recfilter_internals.h.