HCC
HCC is a single-source, C/C++ compiler for heterogeneous computing. It's optimized with HSA (http://www.hsafoundation.com/).
grid_launch.h
1 #pragma once
2 
3 #include <stdint.h>
4 
5 #include <hc_defines.h>
6 
7 #define GRID_LAUNCH_VERSION 20
8 
9 // Extern definitions
10 namespace hc{
11 class completion_future;
12 class accelerator_view;
13 }
14 
15 
16 // 3 dim structure for groups and grids.
17 typedef struct gl_dim3
18 {
19  int x,y,z;
20  gl_dim3(uint32_t _x=1, uint32_t _y=1, uint32_t _z=1) : x(_x), y(_y), z(_z) {};
21 } gl_dim3;
22 
23 typedef enum gl_barrier_bit {
24  barrier_bit_queue_default,
25  barrier_bit_none,
26  barrier_bit_wait,
27 } gl_barrier_bit;
28 
29 
30 // grid_launch_parm contains information used to launch the kernel.
31 typedef struct grid_launch_parm
32 {
35 
38 
41  unsigned int dynamic_group_mem_bytes;;
42 
46  enum gl_barrier_bit barrier_bit;
47 
53  unsigned int launch_fence;
54 
58 
64 
65  grid_launch_parm() = default;
67 
68 
69 extern void init_grid_launch(grid_launch_parm *gl);
This class is the return type of all asynchronous APIs and has an interface analogous to std::shared_...
Definition: hc.hpp:1130
Definition: grid_launch.h:17
hc::accelerator_view * av
Pointer to the accelerator_view where the kernel should execute.
Definition: grid_launch.h:57
gl_dim3 grid_dim
Grid dimensions.
Definition: grid_launch.h:34
unsigned int launch_fence
Value of packet fences to apply to launch.
Definition: grid_launch.h:53
Represents a logical (isolated) accelerator view of a compute accelerator.
Definition: hc.hpp:120
hc::completion_future * cf
Pointe to the completion_future used to track the status of the command.
Definition: grid_launch.h:63
Definition: grid_launch.h:31
gl_dim3 group_dim
Group dimensions.
Definition: grid_launch.h:37
Heterogeneous C++ (HC) namespace.
Definition: grid_launch.h:10