HIP: Heterogenous-computing Interface for Portability
Loading...
Searching...
No Matches
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
10namespace hc{
11class completion_future;
12class accelerator_view;
13}
14
15
16// 3 dim structure for groups and grids.
17typedef 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
23typedef 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.
31typedef struct grid_launch_parm
32{
35
38
42
46 enum gl_barrier_bit barrier_bit;
47
51 unsigned int launch_fence;
52
55 hc::accelerator_view *av;
56
61 hc::completion_future *cf;
62
63 grid_launch_parm() = default;
65
66
67extern void init_grid_launch(grid_launch_parm *gl);
Definition grid_launch.h:18
Definition grid_launch.h:32
unsigned int dynamic_group_mem_bytes
Definition grid_launch.h:41
gl_dim3 grid_dim
Grid dimensions.
Definition grid_launch.h:34
unsigned int launch_fence
Definition grid_launch.h:51
gl_dim3 group_dim
Group dimensions.
Definition grid_launch.h:37
hc::accelerator_view * av
Definition grid_launch.h:55
enum gl_barrier_bit barrier_bit
Definition grid_launch.h:46
hc::completion_future * cf
Definition grid_launch.h:61