ae2f_docs
SlpPool.auto.h
Go to the documentation of this file.
1#undef __ae2f_MACRO_GENERATED
2#define __ae2f_MACRO_GENERATED 1
3#ifndef ae2fVK_AnnSlpPool_h
4
6#define ae2fVK_AnnSlpPool_h
7#endif
8
10#include <ae2f/Macro.h>
11#undef __ae2f_MACRO_GENERATED
12#define __ae2f_MACRO_GENERATED 1
13#include <assert.h>
14#undef __ae2f_MACRO_GENERATED
15#define __ae2f_MACRO_GENERATED 1
16#endif
17
18#include <ae2fVK/Ann/Slp.h>
19#undef __ae2f_MACRO_GENERATED
20#define __ae2f_MACRO_GENERATED 1
21#include <ae2fVK/Ann/SlpPool.auto.h>
22#undef __ae2f_MACRO_GENERATED
23#define __ae2f_MACRO_GENERATED 1
24
25/**
26 * @param
27 * i_vkmaxdescsets Note that would be the max possible amount for
28 * making ae2fVK_AnnSlpDescPoolCmd.
29 *
30 * */
31#define __ae2fVK_AnnSlpDescPoolMkGeneric_imp(
32 /** tparam */
33
34
35 /** param */
36 /* , ae2fVK_AnnSlpCreatDescPool_t */ v_descpool,
37 /* ae2fVK_AnnSlpDescPool */ r_pool,
38 /* ae2f_err_t */ r_reterr,
39 /* ae2fVK_AnnSlp */ iv_slp,
40 /* const VkDescriptorPoolCreateFlagBits */ i_vkdescpoolcreatflags,
41 /* const VkDescriptorType */ i_vkdesctype,
42 /* const uint32_t */ i_vkdescpoolsz_count,
43 /* const uint32_t */ i_vkmaxdescsets \
44)\
45{
46 (r_pool).m_vkdescpool = 0;
47 assert(r_reterr == ae2f_errGlob_OK);
48
50 (v_descpool).m_U0.m_vkdescpoolcreatinfo
51 , (v_descpool).m_U0.m_vkdescpoolsz
52 , (r_pool).m_vkdescpool
53 , r_reterr
54 , (iv_slp).m_vkres
55 , (iv_slp).m_vkdev
56 , (iv_slp).m_vkalloccalls
57 , i_vkdescpoolcreatflags
58 , i_vkdesctype
59 , i_vkdescpoolsz_count
60 , i_vkmaxdescsets
61 );
62
63 if((iv_slp).m_vkres != VK_SUCCESS) {
64 (r_reterr) |= ae2f_errGlob_NFOUND;
65 assert(!"__ae2fVK_AnnSlpCreatDescPoolVerbose_imp has failed (Vulkan)");
66 }
67
68 if((r_reterr))
69 assert(!"__ae2fVK_AnnSlpCreatDescPoolVerbose_imp has failed.");
70
71 unless((r_pool).m_vkdescpool) {
72 assert(!"__ae2fVK_AnnSlpCreatDescPoolVerbose_imp went null.");
73 (r_reterr) |= ae2f_errGlob_ALLOC_FAILED;
74 } \
75}
76
77#define __ae2fVK_AnnSlpDescPoolMk_imp(
78 /** tparam */
79
80
81 /** param */
82 /* , ae2fVK_AnnSlpCreatDescPool_t */ v_descpool,
83 /* ae2fVK_AnnSlpDescPool */ r_pool,
84 /* ae2f_err_t */ r_reterr,
85 /* ae2fVK_AnnSlp */ iv_slp,
86 /* const VkDescriptorPoolCreateFlagBits */ i_vkdescpoolcreatflags,
87 /* const uint32_t */ i_vkmaxdescsets \
88)\
89{
91 v_descpool
92 , r_pool
93 , r_reterr
94 , iv_slp
95 , i_vkdescpoolcreatflags
96 , VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
97 , 2, i_vkmaxdescsets
98 ); \
99}
100
101
102#define __ae2fVK_AnnSlpDescPoolClean_imp(
103 /** tparam */
104
105
106 /** param */
107 /* , const ae2fVK_AnnSlp */ i_slp,
108 /* const ae2fVK_AnnSlpDescPool */ i_pool \
109)\
110{
111 vkDestroyDescriptorPool(
112 (i_slp).m_vkdev
113 , (i_pool).m_vkdescpool
114 , (i_slp).m_vkalloccalls
115 ); \
116}
117
119#define COMMANDONRECORDING
120#endif
121
122/**
123 * @param i_desccount Descriptor Count or Kernel parameter(argument) count.
124 * */
125#define __ae2fVK_AnnSlpDescPoolCmdMk_imp(
126 /** tparam */
127 COMMANDONRECORDING,
128
129 /** param */
130 /* , ae2fVK_AnnSlpDescPoolCmdMk_t */ v_cmdmk,
131 /* ae2fVK_AnnSlpDescPoolCmd */ r_cmd,
132 /* ae2fVK_AnnSlp */ iv_slp,
133 /* const ae2fVK_AnnSlpDescPool */ i_pool,
134 /* ae2f_err_t */ iv_err,
135 /* const uint32_t */ i_desccount,
136 /* const VkDeviceSize */ i_offglob,
137 /* const VkDeviceSize */ i_szglob,
138 /* const VkDeviceSize */ i_offloc,
139 /* const VkDeviceSize */ i_szloc,
140 /* const ae2fVK_eAnnSlpDescLayouts */ i_desclayout,
141 /* const ae2fVK_eAnnSlpPipes */ i_pipe,
142 /* const ae2fVK_eAnnSlpPipeLayouts */ i_pipelayout,
143 /* const VkCommandBuffer */ i_vkcmdbuf \
144)\
145{
146 assert((iv_slp).m_vkres == VK_SUCCESS && "(iv_slp)'s state is bad.");
147 assert((iv_err) == ae2f_errGlob_OK && "r_err's state is bad.");
148
149
150 (v_cmdmk).m_u0.m_vkdescsetallocinfo.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO;
151
152 (v_cmdmk).m_u0.m_vkdescsetallocinfo.descriptorPool
153 = (i_pool).m_vkdescpool;
154
155 (v_cmdmk).m_u0.m_vkdescsetallocinfo.descriptorSetCount
156 = 1;
157
158 (v_cmdmk).m_u0.m_vkdescsetallocinfo.pSetLayouts
159 = &(iv_slp).m_vkdescsetlayout[i_desclayout];
160
161 (v_cmdmk).m_u0.m_vkdescsetallocinfo.pNext = NULL;
162
163 assert((iv_slp).m_vkdev);
164 assert((v_cmdmk).m_u0.m_vkdescsetallocinfo.pSetLayouts);
165 assert((v_cmdmk).m_u0.m_vkdescsetallocinfo.pSetLayouts[i_desclayout]);
166 assert((v_cmdmk).m_u0.m_vkdescsetallocinfo.descriptorPool);
167
168 do {
169 if (((iv_slp).m_vkres = vkAllocateDescriptorSets(
170 (iv_slp).m_vkdev
171 , &(v_cmdmk).m_u0.m_vkdescsetallocinfo
172 , &(r_cmd).m_vkdescset
173 )) != VK_SUCCESS)
174 {
175 assert((r_cmd).m_vkdescset);
176 assert(!"vkAllocateDescriptorSets has failed.");
177 break;
178 }
179
180 unless((r_cmd).m_vkdescset) {
181 assert(!"vkAllocateDescriptorSets went NULL.");
182 (iv_err) |= ae2f_errGlob_PTR_IS_NULL;
183 break;
184 }
185
186 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf[0]
187 .buffer = (iv_slp).m_vkglobbuf;
188
189 /** Offset: is not required. */
190 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf[0]
191 .offset = i_offglob;
192
193 /** Range: Input Output Weight Bias */
194 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf[0]
195 .range = i_szglob;
196
197 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf[1]
198 .buffer = (iv_slp).m_vklocbuf;
199
200 /** Offset: is not required. */
201 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf[1]
202 .offset = i_offloc;
203
204 /** Range: Input Output Weight Bias */
205 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf[1]
206 .range = i_szloc;
207
208
209 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
210 .sType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET;
211
212 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
213 .dstSet = (r_cmd).m_vkdescset;
214
215 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
216 .dstBinding = 0;
217 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
218 .dstArrayElement = 0;
219
220 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
221 .descriptorType = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER;
222
223 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
224 .descriptorCount = (i_desccount);
225
226 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
227 .pBufferInfo = (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_buf;
228
229 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset.pNext = NULL;
230 (v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset.pImageInfo = NULL;
231
232 vkUpdateDescriptorSets(
233 iv_slp.m_vkdev
234 , 1
235 , &(v_cmdmk).m_u0.m_vkdescwrdescinfo.m_wrset
236 , 0
237 , NULL
238 );
239
240 (v_cmdmk).m_u0.m_vkcmdbufbeginfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO;
241 (v_cmdmk).m_u0.m_vkcmdbufbeginfo.pInheritanceInfo = NULL;
242 (v_cmdmk).m_u0.m_vkcmdbufbeginfo.flags = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER;
243 (v_cmdmk).m_u0.m_vkcmdbufbeginfo.pNext = NULL;
244
245 if(((iv_slp).m_vkres = vkBeginCommandBuffer(
246 i_vkcmdbuf
247 , &(v_cmdmk).m_u0.m_vkcmdbufbeginfo
248 )) != VK_SUCCESS)
249 {
250 assert(!"vkBeginCommandBuffer has failed.");
251 break;
252 }
253
254 vkCmdBindPipeline(
255 i_vkcmdbuf
256 , VK_PIPELINE_BIND_POINT_COMPUTE
257 , (iv_slp).m_vkpipeline[i_pipe]
258 );
259
260 vkCmdBindDescriptorSets(
261 i_vkcmdbuf
262 , VK_PIPELINE_BIND_POINT_COMPUTE
263 , (iv_slp).m_vkpipelayout[i_pipelayout]
264 , 0
265 , 1
266 , &(r_cmd).m_vkdescset
267 , 0
268 , NULL
269 );
270
271 { COMMANDONRECORDING }
272
273 if(((iv_slp).m_vkres = vkEndCommandBuffer(i_vkcmdbuf)) != VK_SUCCESS) {
274 assert(!"vkEndCommandBuffer has failed.");
275 break;
276 }
277 } while(0);
278
279 if(((iv_slp).m_vkres != VK_SUCCESS))
280 (iv_err) |= ae2f_errGlob_NFOUND; \
281}
282#define __ae2fVK_AnnSlpDescPoolCmdClean_imp(
283 /** tparam */
284
285
286 /** param */
287 /* , ae2fVK_AnnSlp */ iv_slp,
288 /* const ae2fVK_AnnSlpDescPool */ i_pool,
289 /* const ae2fVK_AnnSlpDescPoolCmd */ i_cmd \
290)\
291{
292 if(((iv_slp).m_vkres = vkFreeDescriptorSets(
293 (iv_slp).m_vkdev
294 , (i_pool).m_vkdescpool
295 , 1
296 , &(i_cmd).m_vkdescset
297 )) != VK_SUCCESS)
298 assert(!"vkFreeDescriptorSets has failed."); \
299}
300
301#define __ae2fVK_AnnSlpDescPoolCmdMkPredict_imp(
302 /** tparam */
303
304
305 /** param */
306 /* , ae2fVK_AnnSlpDescPoolCmdMk_t */ v_cmdmk,
307 /* ae2fVK_AnnSlp */ iv_slp,
308 /* ae2f_err_t */ iv_err,
309 /* const ae2fVK_AnnSlpDescPool */ i_pool,
310 /* ae2fVK_AnnSlpDescPoolCmd */ r_cmd,
311 /* const VkCommandBuffer */ i_vkcmdbuf \
312)\
313{
316 {
317 vkCmdPushConstants(
318 i_vkcmdbuf
319 , (iv_slp).m_vkpipelayout[ae2fVK_eAnnSlpPipeLayouts_kPredict]
320 , VK_SHADER_STAGE_COMPUTE_BIT
321 , 0
322 , sizeof(uint32_t)
323 , &(iv_slp).m_slp.m_Slp[0].m_inc
324 );
325
326 vkCmdDispatch(
327 (i_vkcmdbuf)
328 , (iv_slp).m_slp.m_Slp[0].m_outc
329 , (iv_slp).m_slp.m_Slp[0].m_inc
330 , 1
331 );
332 }
333 )
334 , v_cmdmk
335 , r_cmd
336 , iv_slp
337 , i_pool
338 , iv_err
339 , 1
340 , 0
341 , __ae2fVK_AnnSlpOutOff((iv_slp).m_slp.m_Slp[0].m_inc, (iv_slp).m_slp.m_Slp[0].m_outc)
342 + __ae2fVK_AnnSlpOutSz((iv_slp).m_slp.m_Slp[0].m_inc, (iv_slp).m_slp.m_Slp[0].m_outc)
343
344 , 0
345 , 0
346
347 , ae2fVK_eAnnSlpDescLayouts_kPredict /** i_desclayout */
348 , ae2fVK_eAnnSlpPipes_kPredict /** i_pipe */
349 , ae2fVK_eAnnSlpPipeLayouts_kPredict /** i_pipelayout */
350
351 , i_vkcmdbuf
352 ); \
353}
354
355#define __ae2fVK_AnnSlpDescPoolCmdMkTrain_imp(
356 /** tparam */
357
358
359 /** param */
360 /* , ae2fVK_AnnSlpDescPoolCmdMk_t */ v_cmdmk,
361 /* ae2fVK_AnnSlp */ iv_slp,
362 /* ae2f_err_t */ iv_err,
363 /* const ae2fVK_AnnSlpDescPool */ i_pool,
364 /* ae2fVK_AnnSlpDescPoolCmd */ r_cmd,
365 /* const VkCommandBuffer */ i_vkcmdbuf \
366)\
367{
370 {
371 vkCmdPushConstants(
372 i_vkcmdbuf
373 , (iv_slp).m_vkpipelayout[ae2fVK_eAnnSlpPipeLayouts_kTrain]
374 , VK_SHADER_STAGE_COMPUTE_BIT
375 , 0
376 , sizeof(ae2f_float_t)
377 , &(iv_slp).m_slp.m_learningrate
378 );
379
380 vkCmdPushConstants(
381 i_vkcmdbuf
382 , (iv_slp).m_vkpipelayout[ae2fVK_eAnnSlpPipeLayouts_kTrain]
383 , VK_SHADER_STAGE_COMPUTE_BIT
384 , sizeof(ae2f_float_t)
385 , sizeof(ae2f_float_t)
386 , &(iv_slp).m_slp.m_learningrate_bias
387 );
388
389 vkCmdDispatch(
390 (i_vkcmdbuf)
391 , (iv_slp).m_slp.m_Slp[0].m_outc
392 , (iv_slp).m_slp.m_Slp[0].m_inc
393 , 1
394 );
395 }
396 )
397 , v_cmdmk
398 , r_cmd
399 , iv_slp
400 , i_pool
401 , iv_err
402 , 1
403 , 0
404 , __ae2fVK_AnnSlpGlobSz((iv_slp).m_slp.m_Slp[0].m_inc, (iv_slp).m_slp.m_Slp[0].m_outc)
405
406 , 0
407 , sizeof(ae2f_float_t) * ((iv_slp).m_slp.m_Slp[0].m_outc)
408
409 , ae2fVK_eAnnSlpDescLayouts_kTrain /** i_desclayout */
410 , ae2fVK_eAnnSlpPipes_kTrain /** i_pipe */
411 , ae2fVK_eAnnSlpPipeLayouts_kTrain /** i_pipelayout */
412
413 , i_vkcmdbuf
414 ); \
415}
416
417#endif
418
419#undef __ae2f_MACRO_GENERATED
420
421#define __ae2f_MACRO_GENERATED 0
void ae2f_AnnAct_t(ae2f_float_t *ret, ae2f_float_t x)
Customisable activasion function type.
Definition Act.h:19
void ae2f_AnnLoss_t(ae2f_float_t *ret, const ae2f_float_t *out, const ae2f_float_t *goal, size_t index, size_t count)
Specify the way of calculating loss.
Definition Act.h:29
#define ae2f_enumdef(name,...)
Definition Cast.h:111
#define ae2f_structdef(key, name)
Definition Cast.h:110
#define ae2f_const_cast(t, v)
Definition Cast.h:57
#define ae2f_CastMerge(...)
simply merge all text inside the round bracket, counting them as a single text block.
Definition Cast.h:25
#define ae2f_static_cast(t, v)
Definition Cast.h:42
#define ae2f_reinterpret_cast(t, v)
Definition Cast.h:52
#define unless(...)
Invokes when condition is false.
Definition Cast.h:103
ae2f_float ae2f_float_t
Definition Float.h:38
#define ae2f_opt
Definition Guide.h:26
#define __ae2fVK_AnnMlpBiasOff(i_depth, i_outc)
Definition Mlp.core.h:142
#define __ae2fVK_AnnMlpUnMapRanged_imp
Definition Mlp.core.h:168
ae2fVK_AnnSlpUnMap_t ae2fVK_AnnMlpUnMap_t
Definition Mlp.core.h:117
#define __ae2fVK_AnnMlpDeltaStreamSz(i_depth, i_outc)
Definition Mlp.core.h:145
#define __ae2fVK_AnnMlpMapRangedGeneric_imp
Definition Mlp.core.h:167
#define __ae2fVK_AnnMlpGoalSz(i_depth, i_outc)
Definition Mlp.core.h:151
VkMappedMemoryRange ae2fVK_AnnMlpMapRangedGeneric_t
Definition Mlp.core.h:118
#define __ae2fVK_AnnMlpMdlOff(...)
Definition Mlp.core.h:125
#define __ae2fVK_AnnMlpOutStreamSz(i_depth, i_outc)
Definition Mlp.core.h:127
#define __ae2fVK_AnnMlpWeightOff(i_depth, i_outc)
Definition Mlp.core.h:136
#define __ae2fVK_AnnMlpMdlSz(i_depth,...)
Definition Mlp.core.h:122
#define __ae2fVK_AnnMlpGoalOff(i_depth, i_outc)
Definition Mlp.core.h:154
ae2fVK_AnnSlpDescPoolCmdMk_t ae2fVK_AnnMlpDescPoolCmdMk_t
Definition Mlp.core.h:119
#define __ae2fVK_AnnMlpOutStreamOff(i_depth, i_outc)
Definition Mlp.core.h:130
#define __ae2fVK_AnnMlpWeightSz(i_depth, i_outc)
Definition Mlp.core.h:133
#define __ae2fVK_AnnMlpBiasSz(i_depth, i_outc)
Definition Mlp.core.h:139
#define __ae2fVK_AnnMlpGlobMemSz(i_depth, i_outc)
Definition Mlp.core.h:157
#define __ae2fVK_AnnMlpDeltaStreamOff(i_depth, i_outc)
Definition Mlp.core.h:148
#define __ae2fVK_AnnSlpGoalSz(i_inp, i_out)
Definition Slp.core.h:172
ae2fVK_eAnnSlpDescLayouts
Definition Slp.core.h:47
@ ae2fVK_eAnnSlpDescLayouts_kPredict
Definition Slp.core.h:48
@ ae2fVK_eAnnSlpDescLayouts_LEN
Definition Slp.core.h:50
@ ae2fVK_eAnnSlpDescLayouts_kTrain
Definition Slp.core.h:49
#define __ae2fVK_AnnSlpBiasOff(i_inp, i_out)
Definition Slp.core.h:175
#define __ae2fVK_AnnSlpGoalOff(i_inp, i_out)
Definition Slp.core.h:179
#define __ae2fVK_AnnSlpOutOff(i_inp, i_out)
Definition Slp.core.h:177
#define __ae2fVK_AnnSlpInpSz(i_inp,...)
Definition Slp.core.h:169
VkMappedMemoryRange ae2fVK_AnnSlpMapRangedGeneric_t
Definition Slp.core.h:152
#define __ae2fVK_AnnSlpBiasSz(i_inp, i_out)
Definition Slp.core.h:168
#define __ae2fVK_AnnSlpWeightSz(i_inp, i_out)
Definition Slp.core.h:167
#define __ae2fVK_AnnSlpInpOff(i_inp, i_out)
Definition Slp.core.h:176
ae2fVK_eAnnSlpPipeLayouts
Definition Slp.core.h:40
@ ae2fVK_eAnnSlpPipeLayouts_LEN
Definition Slp.core.h:44
@ ae2fVK_eAnnSlpPipeLayouts_kTrain
Definition Slp.core.h:42
@ ae2fVK_eAnnSlpPipeLayouts_kPredict
Definition Slp.core.h:41
@ ae2fVK_eAnnSlpPipeLayouts_kFit
Definition Slp.core.h:43
#define __ae2fVK_AnnSlpDeltaSz(i_inp, i_out)
Definition Slp.core.h:171
#define __ae2fVK_AnnSlpWeightOff(i_inp, i_out)
Definition Slp.core.h:174
ae2fVK_eAnnSlpDescPools
Definition Slp.core.h:34
@ ae2fVK_eAnnSlpDescPools_kPredict
Definition Slp.core.h:35
@ ae2fVK_eAnnSlpDescPools_kTrain
Definition Slp.core.h:36
@ ae2fVK_eAnnSlpDescPools_LEN
Definition Slp.core.h:37
#define __ae2fVK_AnnSlpGlobSz(i_inp, i_out)
Definition Slp.core.h:181
#define __ae2fVK_AnnSlpOutSz(i_inp, i_out)
Definition Slp.core.h:170
VkMappedMemoryRange ae2fVK_AnnSlpUnMap_t
Definition Slp.core.h:152
char STATIC_ASSERT_ae2fVK_AnnSlpMkU2_vkdescsetlayoutbind_sz[sizeof(ae2fVK_AnnSlpMkU2S0_t)==sizeof(VkDescriptorSetLayoutBinding) *2 ? 1 :-1]
Definition Slp.core.h:117
ae2fVK_eAnnSlpPipes
Definition Slp.core.h:24
@ ae2fVK_eAnnSlpPipes_kFit
Definition Slp.core.h:28
@ ae2fVK_eAnnSlpPipes_kTrain
Definition Slp.core.h:27
@ ae2fVK_eAnnSlpPipes_kPredict
Definition Slp.core.h:25
@ ae2fVK_eAnnSlpPipes_LEN
This is the end of the value, which typically means the count of actual kernel used.
Definition Slp.core.h:31
@ ae2fVK_eAnnSlpPipes_kFollow
Definition Slp.core.h:26
#define __ae2fVK_AnnSlpDeltaOff(i_inp, i_out)
Definition Slp.core.h:178
#define ae2f_MAC_BUILD
Definition Util.h:4
#define ae2fVK_AnnMlpSHADER
#define __ae2fVK_AnnSlpDescPoolMkGeneric_imp(v_descpool, r_pool, r_reterr, iv_slp, i_vkdescpoolcreatflags, i_vkdesctype, i_vkdescpoolsz_count, i_vkmaxdescsets)
#define __ae2fVK_AnnSlpDescPoolMk_imp(v_descpool, r_pool, r_reterr, iv_slp, i_vkdescpoolcreatflags, i_vkmaxdescsets)
#define __ae2fVK_AnnSlpDescPoolCmdClean_imp(iv_slp, i_pool, i_cmd)
#define __ae2fVK_AnnSlpDescPoolCmdMk_imp(COMMANDONRECORDING, v_cmdmk, r_cmd, iv_slp, i_pool, iv_err, i_desccount, i_offglob, i_szglob, i_offloc, i_szloc, i_desclayout, i_pipe, i_pipelayout, i_vkcmdbuf)
#define __ae2fVK_AnnSlpDescPoolClean_imp(i_slp, i_pool)
#define ae2fVK_AnnSlpSHADER
#define ae2f_errGlob_OK
The Operation you've wanted went successful.
Definition errGlob.h:23
#define ae2f_errGlob_ALLOC_FAILED
stdlib allocating functions (malloc, calloc, realloc) has been failed.
Definition errGlob.h:40
#define ae2f_errGlob_NFOUND
Found some errors, but not by parameters. The operation has failed.
Definition errGlob.h:50
#define ae2f_errGlob_WRONG_OPERATION
Found that parameter sent by programmer is invalid. The operation may have been ceased while the midd...
Definition errGlob.h:45
uint8_t ae2f_err_t
Informs that this number represents the error.
Definition errGlob.h:19
#define ae2f_errGlob_PTR_IS_NULL
Failed to refer the pointer either l-value inside the function.
Definition errGlob.h:32
#define ae2f_errGlob_IMP_NOT_FOUND
Failed to find the function on preprocessor which is callable for some reason No operation has beed d...
Definition errGlob.h:28
ae2fVK_AnnSlpDescPoolCmd ae2fVK_AnnMlpDescPoolCmd
Definition Mlp.h:28
ae2fVK_AnnSlpCreatDescPool_t ae2fVK_AnnMlpCreatDescPool_t
Definition Mlp.h:30
ae2fVK_AnnSlpDescPool ae2fVK_AnnMlpDescPool
Definition Mlp.h:27
#define __ae2fVK_AnnSlpMkCLSPVVerbose_imp(r_handle, ir_err, i_first, i_second, i_third)
Definition Slp.auto.h:760
#define __ae2fVK_AnnSlpMapRangedGeneric_imp(T, v_vkmapmemrange, iv_slp, r_err, r_ptr, i_off, i_sz)
Definition Slp.auto.h:834
#define __ae2fVK_AnnSlpMkFndMemProp_imp(CMDONERR, r_memtypeidx, v_errbit, memtypeidx_invalid_minus_one, vkpropflag_req, vkphydevmemprops)
Definition Slp.auto.h:35
#define __ae2fVK_AnnSlpMkCreatBuf(CMDONERR, sz, r_vkres, r_vkbuf, v_vkbufcreatinfo, v_reterr, vkbufuseflags, vksharemode, vkdev, vkalloccalls)
Definition Slp.auto.h:66
#define __ae2fVK_AnnSlpMkLoadPipeCreat_imp(CMDONERR, r_reterr, pipecreat, pipelayout, shadermod, entrypoint, idx_pipe, idx_pipelayout)
Definition Slp.auto.h:209
#define __ae2fVK_AnnSlpCreatDescPoolVerbose_imp(v_vkdescpoolcreatinfo, v_vkdescpoolsz, r_vkdescpool, r_reterr, r_vkres, i_vkdev, i_vkptrAlloc, i_vkdescpoolcreatflags, i_vkdesctype, i_vkdescpoolsz_count, i_vkmaxdescsets)
Definition Slp.auto.h:322
#define __ae2fVK_AnnSlpMkOnePipeLayoutVerbose_imp(CMDONERR, v_vkpushconstrange, v_vkpipelayoutcreatinfo, r_reterr, iv_slpptr, idx, szrequired, vkalloccalls, vkdev)
Definition Slp.auto.h:248
#define __ae2fVK_AnnSlpUnMap_imp(slp)
Definition Slp.auto.h:895
#define __ae2fVK_AnnSlpUnMapRanged_imp(v_out, vi_slp, i_off, i_sz)
Definition Slp.auto.h:907
#define __ae2fVK_AnnSlpMkAllocVKMem_imp(CMDONERR, sz, r_vkres, r_vkbuf, r_vkdevmem, v_errbit, v_vkbufcreatinfo, v_memallocinfo, vkbufuseflags, vksharemode, vkdev, v_vkmemreq, vkalloccalls, v_memtypeidx, memtypeidx_invalid_minus_one, vkpropflag_req, vkphydevmemprops)
Definition Slp.auto.h:110
#define __ae2f_MACRO_GENERATED
Definition Mlp.auto.h:2
#define __ae2f_AnnMlpMk_imp(...)
Definition Mlp.auto.h:315
#define __ae2f_AnnSlpMk_imp(...)
Definition Slp.auto.h:232
#define ae2f_MAC()
delta to delta
Definition mac.h:4
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const iv_bias_opt
Definition Mlp.def.cc:49
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties ae2f_opt VkAllocationCallbacks *const iv_vkalloccalls
Definition Mlp.def.cc:71
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties i_vkmemprops
Definition Mlp.def.cc:69
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t i_extra
Definition Mlp.def.cc:58
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t i_learningrate
Definition Mlp.def.cc:65
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const iv_outstream_opt
Definition Mlp.def.cc:50
ae2fVK_AnnMlp ae2f_err_t ae2f_float_t ae2f_float_t * r_ptrbias
Definition Mlp.def.cc:652
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const iv_deltastream_opt
Definition Mlp.def.cc:51
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t i_len_count
Definition Mlp.def.cc:53
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const i_actderiv
Definition Mlp.def.cc:61
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t i_learningrate_bias
Definition Mlp.def.cc:66
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties ae2f_opt VkAllocationCallbacks *const ae2f_opt const char *const ae2f_opt const char *const i_vkcldefinition
Definition Mlp.def.cc:76
ae2f_opt ae2f_float_t *const iv_weight_opt
Definition Mlp.def.cc:48
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice i_vkdev
Definition Mlp.def.cc:68
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t i_prm_offset
Definition Mlp.def.cc:57
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const i_act
Definition Mlp.def.cc:60
ae2fVK_AnnMlp iv_mlp
Definition Mlp.def.cc:585
ae2fVK_AnnMlp ae2f_err_t ae2f_float_t * r_ptr
Definition Mlp.def.cc:589
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const ae2f_float_t ae2f_float_t const VkDevice const VkPhysicalDeviceMemoryProperties ae2f_opt VkAllocationCallbacks *const ae2f_opt const char *const i_vkcldeclaration
Definition Mlp.def.cc:73
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const i_len_swap
Definition Mlp.def.cc:55
ae2fVK_AnnMlp ae2f_err_t r_err
Definition Mlp.def.cc:586
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const i_len
Definition Mlp.def.cc:54
ae2fVK_AnnMlp ae2f_err_t ae2f_float_t * r_ptrweight
Definition Mlp.def.cc:649
ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const ae2f_opt ae2f_float_t *const const uint32_t const size_t *const ae2f_opt size_t *const ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t **const ae2f_opt ae2f_AnnAct_t **const ae2f_AnnLoss_t *const i_lossderiv
Definition Mlp.def.cc:63