Halide 22.0.0 Halide compiler and libraries

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

`#include <GPULoopInfo.h>`

## Public Member Functions
| GPULoopInfo (const LoopNest *root)
void | update (const Target &target, const LoopNest *loop)
int64_t | total_serial_extents () const
bool | at_or_inside_block () const
bool | at_or_inside_thread () const
std::vector< int64_t > | get_inner_serial_loop_extents (const LoopNest *loop_nest) const
const ThreadInfo * | create_thread_info ()
const ThreadInfo * | get_thread_info () const
int64_t | get_total_inner_serial_extents_outside_realization (const LoopNest *loop_nest) const

## Public Attributes
const LoopNest * | root = nullptr
const LoopNest * | current_block_loop = nullptr
const LoopNest * | current_thread_loop = nullptr
std::vector< const LoopNest * > | inner_loop_stack
int64_t | num_blocks = 1
int64_t | total_outer_serial_extents = 1
int64_t | total_inner_serial_extents = 1

## Detailed Description

Definition at line 22 of file GPULoopInfo.h.

## Constructor & Destructor Documentation

## ◆ GPULoopInfo()

Halide::Internal::Autoscheduler::GPULoopInfo::GPULoopInfo | ( | const LoopNest * | root | ) |
| inline explicit

Definition at line 23 of file GPULoopInfo.h.

## Member Function Documentation

## ◆ update()

void Halide::Internal::Autoscheduler::GPULoopInfo::update | ( | const Target & | target,
|  | const LoopNest * | loop
| ) |  |

## ◆ total_serial_extents()

int64_t Halide::Internal::Autoscheduler::GPULoopInfo::total_serial_extents | ( |  | ) | const

## ◆ at_or_inside_block()

bool Halide::Internal::Autoscheduler::GPULoopInfo::at_or_inside_block | ( |  | ) | const

## ◆ at_or_inside_thread()

bool Halide::Internal::Autoscheduler::GPULoopInfo::at_or_inside_thread | ( |  | ) | const

## ◆ get_inner_serial_loop_extents()

std::vector< int64_t > Halide::Internal::Autoscheduler::GPULoopInfo::get_inner_serial_loop_extents | ( | const LoopNest * | loop_nest | ) | const

## ◆ create_thread_info()

const ThreadInfo * Halide::Internal::Autoscheduler::GPULoopInfo::create_thread_info | ( |  | ) |

## ◆ get_thread_info()

const ThreadInfo * Halide::Internal::Autoscheduler::GPULoopInfo::get_thread_info | ( |  | ) | const
| inline

Definition at line 51 of file GPULoopInfo.h.

## ◆ get_total_inner_serial_extents_outside_realization()

int64_t Halide::Internal::Autoscheduler::GPULoopInfo::get_total_inner_serial_extents_outside_realization | ( | const LoopNest * | loop_nest | ) | const

## Member Data Documentation

## ◆ root

const LoopNest* Halide::Internal::Autoscheduler::GPULoopInfo::root = nullptr

Definition at line 27 of file GPULoopInfo.h.

## ◆ current_block_loop

const LoopNest* Halide::Internal::Autoscheduler::GPULoopInfo::current_block_loop = nullptr

Definition at line 28 of file GPULoopInfo.h.

## ◆ current_thread_loop

const LoopNest* Halide::Internal::Autoscheduler::GPULoopInfo::current_thread_loop = nullptr

Definition at line 29 of file GPULoopInfo.h.

## ◆ inner_loop_stack

std::vector<const LoopNest *> Halide::Internal::Autoscheduler::GPULoopInfo::inner_loop_stack

Definition at line 30 of file GPULoopInfo.h.

## ◆ num_blocks

int64_t Halide::Internal::Autoscheduler::GPULoopInfo::num_blocks = 1

Definition at line 31 of file GPULoopInfo.h.

## ◆ total_outer_serial_extents

int64_t Halide::Internal::Autoscheduler::GPULoopInfo::total_outer_serial_extents = 1

Definition at line 32 of file GPULoopInfo.h.

## ◆ total_inner_serial_extents

int64_t Halide::Internal::Autoscheduler::GPULoopInfo::total_inner_serial_extents = 1

Definition at line 33 of file GPULoopInfo.h.

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

- src/autoschedulers/anderson2021/GPULoopInfo.h