|
Halide 21.0.0
Halide compiler and libraries
|
This is the complete list of members for Halide::Internal::Autoscheduler::LoopNest, including all inherited members.
| accesses_input_buffer() const | Halide::Internal::Autoscheduler::LoopNest | |
| accesses_input_buffer() const | Halide::Internal::Autoscheduler::LoopNest | |
| add_gpu_thread_tilings(const FunctionDAG::Node *f, const Anderson2021Params ¶ms, const Target &target, int v, vector< IntrusivePtr< const LoopNest > > &result, const vector< int64_t > &max_size) | Halide::Internal::Autoscheduler::LoopNest | |
| all_paths_to_leaves_have_thread_loop() const | Halide::Internal::Autoscheduler::LoopNest | |
| all_strides_exist(const LoadJacobian &jac, const FunctionDAG::Node *storage_node, const LoopNest &root) const | Halide::Internal::Autoscheduler::LoopNest | |
| apply(LoopLevel here, StageMap< std::unique_ptr< StageScheduleState > > &state_map, double num_cores, int depth, const LoopNest *parent, const LoopNest *compute_site) const | Halide::Internal::Autoscheduler::LoopNest | |
| apply(LoopLevel here, StageMap< std::unique_ptr< StageScheduleState > > &state_map, double num_cores, int depth, const LoopNest *parent, const LoopNest *compute_site, const Target &target, std::vector< StageScheduleState * > &ancestors, const NodeMap< bool > &all_inlined) const | Halide::Internal::Autoscheduler::LoopNest | |
| bounds | Halide::Internal::Autoscheduler::LoopNest | mutable |
| calls(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| calls(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| can_vectorize_access_for_innermost_dim(const LoadJacobian &jac, const FunctionDAG::Node *accessed, int innermost_dim, int loop_index) const | Halide::Internal::Autoscheduler::LoopNest | |
| can_vectorize_store_access(const LoadJacobian &jac, const FunctionDAG::Node *accessed, bool accessed_has_been_scheduled, int innermost_dim, int loop_index, const GPUMemoryType &mem_type) const | Halide::Internal::Autoscheduler::LoopNest | |
| children | Halide::Internal::Autoscheduler::LoopNest | |
| children | Halide::Internal::Autoscheduler::LoopNest | |
| collect_all_inlined(NodeMap< bool > &all_inlined) const | Halide::Internal::Autoscheduler::LoopNest | |
| collect_nodes_that_should_be_inlined(const NodeMap< bool > &nodes_to_freeze, NodeMap< bool > &inlined_nodes) const | Halide::Internal::Autoscheduler::LoopNest | |
| collect_producers(const StageMap< Sites > &sites) const | Halide::Internal::Autoscheduler::LoopNest | |
| collect_producers(const StageMap< Sites > &sites) const | Halide::Internal::Autoscheduler::LoopNest | |
| collect_stages(std::set< const FunctionDAG::Node::Stage * > &stages) const | Halide::Internal::Autoscheduler::LoopNest | |
| collect_stages(std::set< const FunctionDAG::Node::Stage * > &stages) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_alloc_size_of_node_here(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_features(const FunctionDAG &dag, const Adams2019Params ¶ms, const StageMap< Sites > &sites, int64_t instances, int64_t parallelism, const LoopNest *parent, const LoopNest *grandparent, const LoopNest &root, int64_t *working_set, StageMap< ScheduleFeatures > *features, bool use_cached_features) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_features(const FunctionDAG &dag, const Anderson2021Params ¶ms, const Target &target, const StageMap< Sites > &sites, int64_t instances, int64_t parallelism, const LoopNest *parent, const LoopNest *grandparent, const LoopNest &root, GPULoopInfo gpu_loop_info, bool use_memoized_features, const StageMap< int64_t > &total_shared_mem_alloc_sizes, int64_t *working_set, int64_t *working_set_local_constant, int64_t *working_set_local_dynamic, StageMap< ScheduleFeatures > *features, Statistics &stats, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_gpu_store_features(const LoadJacobian &jac, int consumer_innermost_dim, const FunctionDAG::Node *node, const Bound &consumer_store_bounds, const GPULoopInfo &gpu_loop_info, const std::vector< int64_t > &inner_serial_loop_extents, const Sites &consumer_site, ScheduleFeatures &feat, const LoopNest *parent, const LoopNest &root, GlobalMemInfo &global_mem_loads, SharedMemInfo &shared_mem_loads, LocalMemInfo &local_mem_loads, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_hash_of_producers_stored_at_root(const StageMap< Sites > &sites) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_hash_of_producers_stored_at_root(const StageMap< Sites > &sites) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_here(const FunctionDAG::Node *f, bool tileable, int v, const Adams2019Params ¶ms) | Halide::Internal::Autoscheduler::LoopNest | |
| compute_here(const FunctionDAG::Node *f, bool tileable, int v, bool in_threads_loop, const Anderson2021Params ¶ms, const Target &target) | Halide::Internal::Autoscheduler::LoopNest | |
| compute_in_tiles(const FunctionDAG::Node *f, const LoopNest *parent, const Adams2019Params ¶ms, int v, bool in_realization) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_in_tiles(const FunctionDAG::Node *f, const LoopNest *parent, const Anderson2021Params ¶ms, const Target &target, const SearchSpaceOptions &search_space_options, int v, bool in_realization, bool in_threads_loop, bool is_pre_pass, vector< int64_t > union_counts=vector< int64_t >()) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_licm_amortization(const LoopNest *innermost, const LoopNest *parent, const ScheduleFeatures &feat, const LoadJacobian &jac, int producer_dims) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_local_mem_store_features(const LoadJacobian &jac, int consumer_innermost_dim, const FunctionDAG::Node *node, const Bound &consumer_store_bounds, const LoopNest &root, double serial_loop_extents) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_local_mem_stride(double stride, double bytes) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_mem_load_features(const LoadJacobian &jac, int producer_innermost_dim, const FunctionDAG::Node *node, const Bound &producer_store_bounds, bool producer_has_been_scheduled, const ThreadInfo *thread_info, MemInfoType< T > &mem_info, double serial_loop_extents, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_mem_store_info(const LoadJacobian &jac, int consumer_innermost_dim, const FunctionDAG::Node *node, const Bound &consumer_store_bounds, const ThreadInfo *thread_info, double serial_loop_extents, bool verbose) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_num_mem_accesses_per_block(const LoadJacobian &jac, const FunctionDAG::Node *node, const Bound &store_bounds, const ThreadInfo *thread_info, int innermost_dim, double num_requests_per_warp, MemInfoType< T > &mem_info, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_shared_mem_occupancy(const Anderson2021Params ¶ms, const Target &target, int64_t total_shared_mem_alloc_size, ScheduleFeatures &feat) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_strides(const LoadJacobian &jac, int innermost_storage_dim, const FunctionDAG::Node *storage_node, const Bound &store_bounds, const ThreadInfo *thread_info, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_warp_and_block_occupancy(const Anderson2021Params ¶ms, ScheduleFeatures &feat, const GPULoopInfo &gpu_loop_info) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_warp_features(ScheduleFeatures &features, const GPULoopInfo &gpu_loop_info) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_working_set_from_features(int64_t *working_set, const StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| compute_working_set_from_features(int64_t *working_set, const StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| computes(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| computes(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| copy_from(const LoopNest &n) | Halide::Internal::Autoscheduler::LoopNest | |
| copy_from(const LoopNest &n) | Halide::Internal::Autoscheduler::LoopNest | |
| copy_from_including_features(const LoopNest &n) | Halide::Internal::Autoscheduler::LoopNest | |
| copy_from_including_features(const LoopNest &n) | Halide::Internal::Autoscheduler::LoopNest | |
| dump(std::ostream &os, string prefix, const LoopNest *parent) const | Halide::Internal::Autoscheduler::LoopNest | |
| dump() const | Halide::Internal::Autoscheduler::LoopNest | |
| dump(T &stream, string prefix, const LoopNest *parent) const | Halide::Internal::Autoscheduler::LoopNest | |
| exceeds_serial_extents_limit(const Target &target, const LoopNest *parent, bool in_threads_loop) const | Halide::Internal::Autoscheduler::LoopNest | |
| feature_intermediates | Halide::Internal::Autoscheduler::LoopNest | mutable |
| feature_intermediates_cache | Halide::Internal::Autoscheduler::LoopNest | mutable |
| features | Halide::Internal::Autoscheduler::LoopNest | mutable |
| features_cache | Halide::Internal::Autoscheduler::LoopNest | mutable |
| find_innermost_and_parent() const | Halide::Internal::Autoscheduler::LoopNest | |
| find_pure_stage_loop_nest(const FunctionDAG::Node *node) const | Halide::Internal::Autoscheduler::LoopNest | |
| funcs_realized_or_inlined() const | Halide::Internal::Autoscheduler::LoopNest | inline |
| funcs_realized_or_inlined() const | Halide::Internal::Autoscheduler::LoopNest | inline |
| generate_vec_dim_serial_tilings(vector< int > &serial_sizes) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_actual_vector_dim(const Bound &store_bounds) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_allocs_that_can_be_promoted_to_registers(const Target &target, StageMap< Sites > &sites, NodeMap< bool > &can_be_promoted_to_registers, const LoopNest *grandparent, const LoopNest *parent) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_block_and_serial_extents(const LoopNest *block) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_bounds(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_bounds(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_bounds_along_edge_chain(const FunctionDAG::Node *f, const vector< const FunctionDAG::Edge * > &edge_chain) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_enclosing_block(const LoopNest *parent, const LoopNest *grandparent) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_gpu_memory_type(bool in_block, bool in_thread, bool is_inlined=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_pure_stage_vectorized_loop_index(const FunctionDAG::Node *node) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_sites(StageMap< Sites > &sites, const LoopNest *task=nullptr, const LoopNest *parent=nullptr) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_sites(const Target &target, StageMap< Sites > &sites, StageMap< int64_t > &shared_mem_alloc_sizes, const LoopNest *task=nullptr, const LoopNest *parent=nullptr, const LoopNest *current_thread_loop=nullptr) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_stage_sizes(const FunctionDAG::Node *f, vector< vector< int64_t > > &stage_sizes, vector< vector< int > > &pure_dims, vector< int > &vectorized_indices) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_stages_computed_in_each_compute_root_loop(StageMap< StageMap< bool > > &descendants, const LoopNest *compute_root_loop_nest=nullptr) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_total_constant_local_mem_alloc_size() const | Halide::Internal::Autoscheduler::LoopNest | |
| get_total_local_mem_alloc_size(bool constant_allocs_only=false, bool in_threads_loop=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_union_thread_counts(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| get_vectorized_loop_index_from_pure_stage(const LoopNest &root) const | Halide::Internal::Autoscheduler::LoopNest | |
| gpu_label | Halide::Internal::Autoscheduler::LoopNest | mutable |
| has_constant_region_computed(const FunctionDAG::Node *node) const | Halide::Internal::Autoscheduler::LoopNest | |
| has_constant_region_required(const FunctionDAG::Node *node) const | Halide::Internal::Autoscheduler::LoopNest | |
| has_dynamic_allocation_inside_thread(bool in_thread_loop) const | Halide::Internal::Autoscheduler::LoopNest | |
| has_thread_loop_descendant() const | Halide::Internal::Autoscheduler::LoopNest | |
| has_valid_thread_extents() const | Halide::Internal::Autoscheduler::LoopNest | |
| hash_combine(uint64_t &h, uint64_t next) | Halide::Internal::Autoscheduler::LoopNest | inlinestatic |
| hash_combine(uint64_t &h, uint64_t next) | Halide::Internal::Autoscheduler::LoopNest | inlinestatic |
| inline_func(const FunctionDAG::Node *f) | Halide::Internal::Autoscheduler::LoopNest | |
| inline_func(const FunctionDAG::Node *f) | Halide::Internal::Autoscheduler::LoopNest | |
| inlined | Halide::Internal::Autoscheduler::LoopNest | |
| innermost | Halide::Internal::Autoscheduler::LoopNest | |
| is_gpu_block(const Target &target) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| is_gpu_serial(const Target &target) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| is_gpu_thread(const Target &target) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| is_root() const | Halide::Internal::Autoscheduler::LoopNest | inline |
| is_root() const | Halide::Internal::Autoscheduler::LoopNest | inline |
| is_scalar() const | Halide::Internal::Autoscheduler::LoopNest | inline |
| max_idle_lane_wastage(const Target &target, GPULoopInfo gpu_loop_info) const | Halide::Internal::Autoscheduler::LoopNest | |
| max_inlined_calls() const | Halide::Internal::Autoscheduler::LoopNest | |
| max_inlined_calls() const | Halide::Internal::Autoscheduler::LoopNest | |
| memoize_features(StageMap< ScheduleFeatures > &memoized_features, const StageMap< ScheduleFeatures > *features_to_insert) const | Halide::Internal::Autoscheduler::LoopNest | |
| memoize_features(StageMap< ScheduleFeatures > &memoized_features, const StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| memoize_points_computed_minimum(StageMap< ScheduleFeatures > &memoized_features, const StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| memoize_points_computed_minimum(StageMap< ScheduleFeatures > &memoized_features, const StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| node | Halide::Internal::Autoscheduler::LoopNest | |
| node_has_dynamic_region_computed(const FunctionDAG::Node *f) const | Halide::Internal::Autoscheduler::LoopNest | |
| num_serial_loops(const FunctionDAG::Node::Stage *stage) const | Halide::Internal::Autoscheduler::LoopNest | |
| num_serial_loops() const | Halide::Internal::Autoscheduler::LoopNest | |
| other_stage_has_same_producer(const FunctionDAG::Node *producer) const | Halide::Internal::Autoscheduler::LoopNest | |
| parallel | Halide::Internal::Autoscheduler::LoopNest | |
| parallelize_in_tiles(const Adams2019Params ¶ms, const vector< int64_t > &tiling, const LoopNest *parent) const | Halide::Internal::Autoscheduler::LoopNest | |
| parallelize_in_tiles(const vector< int64_t > &tiling, const LoopNest *parent, const Anderson2021Params ¶ms, const Target &target, bool inner_tiling, bool adjust_tiling, bool move_all_rvars_inward=true, const vector< int > &rvars_to_move_inward={}) const | Halide::Internal::Autoscheduler::LoopNest | |
| points_accessed_per_thread(const Anderson2021Params ¶ms, const Target &target, const GPULoopInfo &gpu_loop_info, const std::vector< const FunctionDAG::Edge * > &edge_chain, const LoadJacobian &jac, const LoopNest *parent, const LoopNest *grandparent, int64_t n, const ScheduleFeatures &feat, const LoadJacobian &serial_jac, bool producer_has_been_scheduled, int producer_innermost_dim, const GPUMemoryType &mem_type, bool verbose) const | Halide::Internal::Autoscheduler::LoopNest | |
| producer_computed_here_or_further_in(const FunctionDAG::Node *producer) const | Halide::Internal::Autoscheduler::LoopNest | |
| product_of_descendants(int loop_index) const | Halide::Internal::Autoscheduler::LoopNest | |
| product_of_self_and_descendants(int loop_index) const | Halide::Internal::Autoscheduler::LoopNest | |
| promote_allocs_to_registers(const Target &target, StageMap< Sites > &sites) const | Halide::Internal::Autoscheduler::LoopNest | |
| recompute_inlined_features(const StageMap< Sites > &sites, StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| recompute_inlined_features(const StageMap< Sites > &sites, StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | |
| ref_count | Halide::Internal::Autoscheduler::LoopNest | mutable |
| region_computed_shrinks(const FunctionDAG::Node *f, const LoopNest *parent) const | Halide::Internal::Autoscheduler::LoopNest | |
| requires_dynamic_allocation(const FunctionDAG::Node *f, const Target &target, bool in_threads_loop) const | Halide::Internal::Autoscheduler::LoopNest | |
| set_bounds(const FunctionDAG::Node *f, BoundContents *b) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| set_bounds(const FunctionDAG::Node *f, BoundContents *b) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| set_working_set_at_task_feature(int64_t working_set, StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| set_working_set_at_task_feature(int64_t working_set, StageMap< ScheduleFeatures > *features) const | Halide::Internal::Autoscheduler::LoopNest | inline |
| size | Halide::Internal::Autoscheduler::LoopNest | |
| size | Halide::Internal::Autoscheduler::LoopNest | |
| stage | Halide::Internal::Autoscheduler::LoopNest | |
| storage_stride(const LoadJacobian &jac, int innermost_storage_dim, const FunctionDAG::Node *storage_node, const Bound &store_bounds, const LoopNest &root) const | Halide::Internal::Autoscheduler::LoopNest | |
| store_at | Halide::Internal::Autoscheduler::LoopNest | |
| structural_hash(uint64_t &h, int depth) const | Halide::Internal::Autoscheduler::LoopNest | |
| structural_hash(uint64_t &h, int depth) const | Halide::Internal::Autoscheduler::LoopNest | |
| tileable | Halide::Internal::Autoscheduler::LoopNest | |
| to_string() const | Halide::Internal::Autoscheduler::LoopNest | |
| unrolled_loops(const Target &target, const LoopNest *parent, const LoopNest *grandparent) const | Halide::Internal::Autoscheduler::LoopNest | |
| update_producers_to_be_staged(StageScheduleState &state, const NodeMap< bool > &all_inlined) const | Halide::Internal::Autoscheduler::LoopNest | |
| vector_dim | Halide::Internal::Autoscheduler::LoopNest | |
| vectorized_access_size(size_t loop_index, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| vectorized_load_access_size(const LoadJacobian &jac, const FunctionDAG::Node *accessed, bool accessed_has_been_scheduled, int innermost_dim, const GPUMemoryType &mem_type, bool verbose=false) const | Halide::Internal::Autoscheduler::LoopNest | |
| vectorized_loop_index | Halide::Internal::Autoscheduler::LoopNest |