|
void | OpenKernelGroup (char *GroupName) |
| Open a user kernel group. More...
|
|
void | CloseKernelGroup () |
| Close currently open user kernel group. More...
|
|
void | CloseKernelGroupNoMerge () |
| Close currently open user kernel group setting KER_OPT_KEEP_GROUP for nodes in the group. More...
|
|
CKernelCall_T * | UserKernelCall (char *CallName, KernelCallLocationT CallLocation, ArgBindingDescr_T **BindingList) |
| Call a user kernel in a user kernel group. More...
|
|
Object_T * | KerGroupArg (char *KerArgName, Object_Type_T ObjType, int ArgSize, int ItemSize, char *CArgName) |
|
ArgBindingDescr_T * | KG_ArgOper (char *ArgName, char Oper, int Value) |
| Binds argument to a user kernel group argument and combine it with Value using Oper. More...
|
|
StackedTensors_T * | AT_StackedTensors (char *OutTensorName, int Count,...) |
| Creates a stacked tensor, resulting object is OutTensorName, Count in tensors passed as names are stacked according to list order. More...
|
|
void | AddStackedTensors (char *OutTensorName, int Count,...) |
| Add a stacked tensor to the open graph. More...
|
|
StackedTensors_T * | AT_StackedTensorsList (int Count,...) |
| Creates a list of stacked tensors. More...
|
|
CKernel_Arg_T * | StackedTensorsLookup (StackedTensors_T *List, NameT *Name) |
| Given input tensor Name returns corresponding Out Stacked Tensor if it exists. More...
|
|
void | UserKernelGroup (char *GroupName, CKernel_Arg_T **CArg, CKernelCall_T **CCalls) |
| Declare a user kernel group. More...
|
|
KernelGroup_T * | UserKernelGroupK (char *GroupName, unsigned int IterCount, CKernel_Arg_T **CArg, StackedTensors_T *StackedTensors, CKernelCall_T **CCalls, Object_T **KerArg) |
|
Functions in this group should be used to create groups of user kernels
A user kernel group starts with an OpenKernelGroup() followed by multiple UserKernel() and CloseKernelGroup()
Then the group header and how user kernels are called in the group are captured in UserKernelGroup()
void AddStackedTensors |
( |
char * |
OutTensorName, |
|
|
int |
Count, |
|
|
|
... |
|
) |
| |
Adds a stacked tensor to the graph. The stacked tensor creates a series of aliases for the tensor OutTensorName which should be declared as an output or local. The aliases can be used as outputs of kernels and will be assembled in the order declared into the output tensor.
Creates a list of stacked tensors, resulting object is OutTensorName, Count in tensors passed as names are stacked according to list order
Creates a list of stacked tensors
void CloseKernelGroup |
( |
| ) |
|
Close currently open user kernel group.
void CloseKernelGroupNoMerge |
( |
| ) |
|
Close currently open user kernel group setting KER_OPT_KEEP_GROUP for nodes in the group
Object_T* KerGroupArg |
( |
char * |
KerArgName, |
|
|
Object_Type_T |
ObjType, |
|
|
int |
ArgSize, |
|
|
int |
ItemSize, |
|
|
char * |
CArgName |
|
) |
| |
- Parameters
-
KerArgName | User kernel group argument name |
ObjType | Argument type, O_IN and/or O_OUT can be used only |
ArgSize | Number of elements of this argument |
ItemSize | Size in byte of the elementary data type of this argument |
CArgName | Corresponding name in the User Kernel Group definition |
Binds argument to a user kernel group argument and combine it with Value using Oper
See K_Arg() for ArgName and ArgSelect. Supported operation are defined in ArgBindingOper. Value is a signed immediate constant.
- Parameters
-
ArgName | A tiled user kernel argument name |
Oper | Operation, see ArgBindingOper. Valid: + - * / % |
Value | A signed immediate value |
void OpenKernelGroup |
( |
char * |
GroupName | ) |
|
Open a user kernel group
- Parameters
-
GroupName | C name to be used for the group |
Given input tensor Name returns corresponding Out Stacked Tensor if it exists
- Parameters
-
List | A list of stacked tensor |
Name | Input tensor name to search |
Call a user kernel in a user kernel group
- Parameters
-
Declare a user kernel group
- Parameters
-