Halide  12.0.1
Halide compiler and libraries
DeviceAPI.h
Go to the documentation of this file.
1 #ifndef HALIDE_DEVICEAPI_H
2 #define HALIDE_DEVICEAPI_H
3 
4 /** \file
5  * Defines DeviceAPI.
6  */
7 
8 #include <string>
9 #include <vector>
10 
11 namespace Halide {
12 
13 /** An enum describing a type of device API. Used by schedules, and in
14  * the For loop IR node. */
15 enum class DeviceAPI {
16  None, /// Used to denote for loops that run on the same device as the containing code.
17  Host,
19  CUDA,
20  OpenCL,
22  Metal,
23  Hexagon,
24  HexagonDma,
26 };
27 
28 /** An array containing all the device apis. Useful for iterating
29  * through them. */
40 
41 } // namespace Halide
42 
43 #endif // HALIDE_DEVICEAPI_H
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
DeviceAPI
An enum describing a type of device API.
Definition: DeviceAPI.h:15
@ Host
Used to denote for loops that run on the same device as the containing code.
const DeviceAPI all_device_apis[]
An array containing all the device apis.
Definition: DeviceAPI.h:30