Halide 22.0.0 Halide compiler and libraries

Public Member Functions | Public Attributes | List of all members
Halide::Internal::Autoscheduler::LoopNest::Sites Struct Reference

`#include <LoopNest.h>`

## Public Member Functions
bool | is_stored_in_global_mem () const
bool | is_stored_in_shared_mem () const
bool | is_stored_in_local_mem () const
bool | is_stored_in_registers () const

## Public Attributes
const LoopNest * | compute = nullptr
const LoopNest * | store = nullptr
const LoopNest * | produce = nullptr
const LoopNest * | innermost = nullptr
const LoopNest * | task = nullptr
bool | inlined = false
uint64_t | hash_of_producers_stored_at_root
const LoopNest * | thread = nullptr
GPUMemoryType | gpu_store_memory_type
int64_t | allocation_size = 0
bool | is_constant_allocation = false
int64_t | num_realizations = 0
std::vector< const LoopNest * > | inlined_innermosts

## Detailed Description

Definition at line 100 of file LoopNest.h.

## Member Function Documentation

## ◆ is_stored_in_global_mem()

bool Halide::Internal::Autoscheduler::LoopNest::Sites::is_stored_in_global_mem | ( |  | ) | const
| inline

Definition at line 229 of file LoopNest.h.

References Halide::Internal::Autoscheduler::Global, and gpu_store_memory_type.

## ◆ is_stored_in_shared_mem()

bool Halide::Internal::Autoscheduler::LoopNest::Sites::is_stored_in_shared_mem | ( |  | ) | const
| inline

Definition at line 232 of file LoopNest.h.

References gpu_store_memory_type, and Halide::Internal::Autoscheduler::Shared.

## ◆ is_stored_in_local_mem()

bool Halide::Internal::Autoscheduler::LoopNest::Sites::is_stored_in_local_mem | ( |  | ) | const
| inline

Definition at line 235 of file LoopNest.h.

References gpu_store_memory_type, and Halide::Internal::Autoscheduler::Local.

## ◆ is_stored_in_registers()

bool Halide::Internal::Autoscheduler::LoopNest::Sites::is_stored_in_registers | ( |  | ) | const
| inline

Definition at line 238 of file LoopNest.h.

References gpu_store_memory_type, and Halide::Internal::Autoscheduler::Registers.

## Member Data Documentation

## ◆ compute

const LoopNest * Halide::Internal::Autoscheduler::LoopNest::Sites::compute = nullptr

Definition at line 101 of file LoopNest.h.

## ◆ store

const LoopNest * Halide::Internal::Autoscheduler::LoopNest::Sites::store = nullptr

Definition at line 102 of file LoopNest.h.

## ◆ produce

const LoopNest * Halide::Internal::Autoscheduler::LoopNest::Sites::produce = nullptr

Definition at line 103 of file LoopNest.h.

## ◆ innermost

const LoopNest * Halide::Internal::Autoscheduler::LoopNest::Sites::innermost = nullptr

Definition at line 104 of file LoopNest.h.

## ◆ task

const LoopNest * Halide::Internal::Autoscheduler::LoopNest::Sites::task = nullptr

Definition at line 105 of file LoopNest.h.

## ◆ inlined

bool Halide::Internal::Autoscheduler::LoopNest::Sites::inlined = false

Definition at line 106 of file LoopNest.h.

## ◆ hash_of_producers_stored_at_root

uint64_t Halide::Internal::Autoscheduler::LoopNest::Sites::hash_of_producers_stored_at_root

Definition at line 109 of file LoopNest.h.

## ◆ thread

const LoopNest* Halide::Internal::Autoscheduler::LoopNest::Sites::thread = nullptr

Definition at line 220 of file LoopNest.h.

## ◆ gpu_store_memory_type

GPUMemoryType Halide::Internal::Autoscheduler::LoopNest::Sites::gpu_store_memory_type

Definition at line 221 of file LoopNest.h.

Referenced by is_stored_in_global_mem(), is_stored_in_local_mem(), is_stored_in_registers(), and is_stored_in_shared_mem().

## ◆ allocation_size

int64_t Halide::Internal::Autoscheduler::LoopNest::Sites::allocation_size = 0

Definition at line 222 of file LoopNest.h.

## ◆ is_constant_allocation

bool Halide::Internal::Autoscheduler::LoopNest::Sites::is_constant_allocation = false

Definition at line 223 of file LoopNest.h.

## ◆ num_realizations

int64_t Halide::Internal::Autoscheduler::LoopNest::Sites::num_realizations = 0

Definition at line 224 of file LoopNest.h.

## ◆ inlined_innermosts

std::vector<const LoopNest *> Halide::Internal::Autoscheduler::LoopNest::Sites::inlined_innermosts

Definition at line 226 of file LoopNest.h.

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

- src/autoschedulers/adams2019/LoopNest.h
- src/autoschedulers/anderson2021/LoopNest.h