Halide 22.0.0 Halide compiler and libraries

Loading...
Searching...
No Matches
Classes | Namespaces | Enumerations | Functions
LoopNest.h File Reference
`#include "ASLog.h"`
`#include "CostModel.h"`
`#include "FunctionDAG.h"`
`#include "GPULoopInfo.h"`
`#include "GPUMemInfo.h"`
`#include "PerfectHashMap.h"`
`#include "SearchSpaceOptions.h"`
`#include "Statistics.h"`
`#include "ThreadInfo.h"`
`#include "Tiling.h"`
`#include <set>`
`#include <vector>`

Go to the source code of this file.

## Classes
struct | Halide::Internal::Autoscheduler::LoopNest
struct | Halide::Internal::Autoscheduler::LoopNest::FeatureIntermediates
struct | Halide::Internal::Autoscheduler::LoopNest::Sites
struct | Halide::Internal::Autoscheduler::LoopNest::StageScheduleState
struct | Halide::Internal::Autoscheduler::LoopNest::StageScheduleState::FuncVar
struct | Halide::Internal::Autoscheduler::Filter

## Namespaces
namespace | Halide
| This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it.
namespace | Halide::Internal
namespace | Halide::Internal::Autoscheduler

## Enumerations
enum class | Halide::Internal::Autoscheduler::GPU_parallelism { Halide::Internal::Autoscheduler::Block , Halide::Internal::Autoscheduler::Thread , Halide::Internal::Autoscheduler::Serial , Halide::Internal::Autoscheduler::Simd , Halide::Internal::Autoscheduler::Parallelized , Halide::Internal::Autoscheduler::None }
enum class | Halide::Internal::Autoscheduler::GPUMemoryType { Halide::Internal::Autoscheduler::Global , Halide::Internal::Autoscheduler::Shared , Halide::Internal::Autoscheduler::Local , Halide::Internal::Autoscheduler::Registers , Halide::Internal::Autoscheduler::Inlined }

## Functions
std::string | Halide::Internal::Autoscheduler::stringify (GPU_parallelism label)
bool | Halide::Internal::Autoscheduler::may_subtile (const Anderson2021Params &params)
int64_t | Halide::Internal::Autoscheduler::get_shared_memory_limit (const Anderson2021Params &params)
int64_t | Halide::Internal::Autoscheduler::get_shared_memory_sm_limit (const Anderson2021Params &params)
int64_t | Halide::Internal::Autoscheduler::get_active_block_hardware_limit (const Anderson2021Params &params)
int64_t | Halide::Internal::Autoscheduler::get_active_warp_hardware_limit (const Anderson2021Params &params)
constexpr int64_t | Halide::Internal::Autoscheduler::get_register_mem_alloc_limit ()
int | Halide::Internal::Autoscheduler::get_unroll_limit (const Target &target)
bool | Halide::Internal::Autoscheduler::in_range_zero_one (double x)
bool | Halide::Internal::Autoscheduler::are_valid_thread_extents (const vector< int64_t > &counts)
double | Halide::Internal::Autoscheduler::get_idle_lane_wastage_limit_env_var ()
double | Halide::Internal::Autoscheduler::get_idle_lane_wastage_limit ()
bool | Halide::Internal::Autoscheduler::all (const vector< int > &v)
bool | Halide::Internal::Autoscheduler::accessed_at_constant_indices (const std::vector< int > &unrolled, const FunctionDAG::Edge *e)