Halide
Halide::AutoschedulerParams Struct Reference

Special the Autoscheduler to be used (if any), along with arbitrary additional arguments specific to the given Autoscheduler. More...

#include <Pipeline.h>

Public Member Functions

 AutoschedulerParams ()=default
 
 AutoschedulerParams (const std::string &name)
 
 AutoschedulerParams (const std::string &name, const std::map< std::string, std::string > &extra)
 
std::string to_string () const
 

Public Attributes

std::string name
 
std::map< std::string, std::string > extra
 

Detailed Description

Special the Autoscheduler to be used (if any), along with arbitrary additional arguments specific to the given Autoscheduler.

The 'name' field specifies the type of Autoscheduler to be used (e.g. Adams2019, Mullapudi2016). If this is an empty string, no autoscheduling will be done; if not, it mustbe the name of a known Autoscheduler.

At this time, well-known autoschedulers include: "Mullapudi2016" – heuristics-based; the first working autoscheduler; currently built in to libHalide see http://graphics.cs.cmu.edu/projects/halidesched/ "Adams2019" – aka "the ML autoscheduler"; currently located in apps/autoscheduler see https://halide-lang.org/papers/autoscheduler2019.html "Li2018" – aka "the gradient autoscheduler"; currently located in apps/gradient_autoscheduler. see https://people.csail.mit.edu/tzumao/gradient_halide

The key/value pairs in 'extra' are defined on a per-autoscheduler basis. An autoscheduler can have any number of required or optional keys.

Definition at line 49 of file Pipeline.h.

Constructor & Destructor Documentation

◆ AutoschedulerParams() [1/3]

Halide::AutoschedulerParams::AutoschedulerParams ( )
default

◆ AutoschedulerParams() [2/3]

Halide::AutoschedulerParams::AutoschedulerParams ( const std::string &  name)
inline

Definition at line 54 of file Pipeline.h.

◆ AutoschedulerParams() [3/3]

Halide::AutoschedulerParams::AutoschedulerParams ( const std::string &  name,
const std::map< std::string, std::string > &  extra 
)
inline

Definition at line 57 of file Pipeline.h.

Member Function Documentation

◆ to_string()

std::string Halide::AutoschedulerParams::to_string ( ) const

Member Data Documentation

◆ name

std::string Halide::AutoschedulerParams::name

Definition at line 50 of file Pipeline.h.

Referenced by Halide::Internal::GeneratorBase::using_autoscheduler().

◆ extra

std::map<std::string, std::string> Halide::AutoschedulerParams::extra

Definition at line 51 of file Pipeline.h.


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