← Back to C-Kernel-Engine Docs Doxygen Source Documentation
ckernel_kernel_specs.h
Go to the documentation of this file.
1 #ifndef CKERNEL_KERNEL_SPECS_H
2 #define CKERNEL_KERNEL_SPECS_H
3 
4 #include <stddef.h>
5 
6 #include "ckernel_dtype.h"
7 
8 typedef enum {
22 
23 #define CKERNEL_MAX_KERNEL_SOURCES 8
24 
25 typedef struct {
27  int mult;
28  int div;
29 } CKDimToken;
30 
31 typedef enum {
35 
36 typedef enum {
44 
45 typedef struct {
46  const char *name;
49  CKDimToken shape[4];
50  int optional;
51  const char *alias_of;
52  const char *condition;
54 } CKBufferSpec;
55 
56 typedef struct {
57  const char *name;
58  const char *forward[CK_DT_COUNT];
59  const char *backward[CK_DT_COUNT];
62  const char *sources[CKERNEL_MAX_KERNEL_SOURCES];
63 } CKKernelSpec;
64 
65 typedef struct {
66  const char *kernel;
67  const char *condition;
68 } CKPlanStep;
69 
70 typedef struct {
71  const char *arg;
72  const char *buffer;
74 
75 typedef struct {
76  const char *kernel;
77  const char *condition;
79  size_t num_bindings;
80 } CKPlanStepV2;
81 
82 extern const CKBufferSpec ck_decoder_buffers[];
83 extern const size_t ck_decoder_buffer_count;
84 
85 extern const CKKernelSpec ck_kernel_specs[];
86 extern const size_t ck_kernel_spec_count;
87 
88 extern const CKPlanStep ck_decoder_forward_plan[];
89 extern const size_t ck_decoder_forward_plan_count;
90 
92 extern const size_t ck_decoder_backward_plan_count;
93 
95 extern const size_t ck_decoder_forward_plan_v2_count;
96 
98 extern const size_t ck_decoder_backward_plan_v2_count;
99 
100 #endif /* CKERNEL_KERNEL_SPECS_H */
uint32_t CKDataTypeMask
Definition: ckernel_dtype.h:51
CKDataType
Supported data types in C-Kernel-Engine.
Definition: ckernel_dtype.h:27
@ CK_DT_COUNT
Definition: ckernel_dtype.h:48
#define CKERNEL_MAX_KERNEL_SOURCES
@ CK_ROLE_WEIGHT
@ CK_ROLE_SCRATCH
@ CK_ROLE_GRAD
@ CK_ROLE_ACTIVATION
@ CK_ROLE_INPUT
@ CK_ROLE_OUTPUT
const CKPlanStepV2 ck_decoder_forward_plan_v2[]
const CKPlanStep ck_decoder_forward_plan[]
@ CK_DIM_ALIGNED_INTERMEDIATE
@ CK_DIM_NUM_HEADS
@ CK_DIM_ALIGNED_EMBED
@ CK_DIM_TOKENS
@ CK_DIM_INTERMEDIATE
@ CK_DIM_ALIGNED_CTX
@ CK_DIM_END
@ CK_DIM_ALIGNED_HEAD
@ CK_DIM_HEAD_DIM
@ CK_DIM_NUM_KV_HEADS
@ CK_DIM_VOCAB
@ CK_DIM_EMBED
const size_t ck_decoder_backward_plan_count
const size_t ck_decoder_forward_plan_v2_count
const size_t ck_decoder_backward_plan_v2_count
const size_t ck_decoder_forward_plan_count
const CKPlanStep ck_decoder_backward_plan[]
const CKKernelSpec ck_kernel_specs[]
const CKPlanStepV2 ck_decoder_backward_plan_v2[]
const CKBufferSpec ck_decoder_buffers[]
const size_t ck_kernel_spec_count
const size_t ck_decoder_buffer_count
@ CK_SCOPE_LAYER
@ CK_SCOPE_GLOBAL
CKBufferRole role
const char * alias_of
const char * condition
CKBufferScope scope
const char * name
CKDataTypeMask dtype_mask
CKDataType default_dtype
const char * name
const char * buffer
const char * kernel
const char * condition
const CKPlanBinding * bindings
const char * kernel
const char * condition