ae2f_docs
Slp.auto.def.cc File Reference
module shadermod
#include <ae2f/Macro.h>
#include <ae2fVK/Ann/Slp.h>
#include <stdlib.h>
#include <assert.h>
#include <string.h>
#include <stdio.h>

Go to the source code of this file.

Macros

#define ae2fVK_Ann_Slp_c
#define CMDONERR
#define __ae2fVK_AnnSlpMkOnePipeLayout_imp(CMDONERR, v_mk, i_idx, i_szrequired, iv_vkalloccalls, i_vkdev)
 Make one pipeline layout with given push-constant size.
#define T   int
#define COMMANDONRECORDING

Functions

 ae2f_MAC (CMDONERR,) _ae2fVK_AnnSlpMkFndMemProp_imp(unsigned char r_memtypeidx
 assert ((vkphydevmemprops).memoryTypeCount<=VK_MAX_MEMORY_TYPES &&"Invalid memory type count.")
 for ((r_memtypeidx)=(vkphydevmemprops).memoryTypeCount;(r_memtypeidx) -- &&(~((vkphydevmemprops).memoryTypes[(r_memtypeidx)].propertyFlags) &vkpropflag_req) ;)
 if ((r_memtypeidx)==(memtypeidx_invalid_minus_one))
 if (((r_vkres)=vkCreateBuffer(vkdev, &(v_vkbufcreatinfo), vkalloccalls, &(r_vkbuf))) !=VK_SUCCESS)
 unless ((r_vkbuf))
 __ae2fVK_AnnSlpMkFndMemProp_imp (CMDONERR, v_memtypeidx, v_errbit, memtypeidx_invalid_minus_one, vkpropflag_req, vkphydevmemprops)
 vkGetBufferMemoryRequirements (vkdev, r_vkbuf, &(v_vkmemreq))
 unless ((v_vkmemreq).size >=(v_vkbufcreatinfo).size)
 unless ((v_vkmemreq).size<=(vkphydevmemprops).memoryHeaps[(vkphydevmemprops).memoryTypes[v_memtypeidx].heapIndex].size)
 if (((r_vkres)=vkAllocateMemory(vkdev, &(v_memallocinfo),(vkalloccalls), &(r_vkdevmem))) !=VK_SUCCESS)
 unless ((r_vkdevmem))
 if (((r_vkres)=vkBindBufferMemory(vkdev, r_vkbuf, r_vkdevmem, 0)) !=VK_SUCCESS)
 unless ((pipelayout)[idx_pipelayout])
 if ((szrequired) &0b11)
 if (((iv_slpptr) ->m_vkres=vkCreatePipelineLayout(vkdev, &(v_vkpipelayoutcreatinfo),(vkalloccalls), &(iv_slpptr) ->m_vkpipelayout[idx])) !=VK_SUCCESS)
 unless ((iv_slpptr) ->m_vkpipelayout[idx])
 if (((r_vkres)=vkCreateDescriptorPool((i_vkdev), &(v_vkdescpoolcreatinfo),(i_vkptrAlloc), &(r_vkdescpool))) !=VK_SUCCESS)
 unless ((r_vkdescpool))
 ae2f_MAC () _ae2fVK_AnnSlpMk_imp(ae2fVK_AnnSlpMk_t v_mk
 Make slp with OpenCL compute shader.
 assert ((lossderiv) &&"lossderiv must be specified.")
 if ((v_mk).m_union.m_base.m_ptr->m_Slp[0].m_inc > UINT32_MAX)
 __ae2f_AnnSlpInitInpSz_imp ((v_mk).m_union.m_base.m_alloccount, 0, 0, 0, inc, outc)
 __ae2fVK_AnnSlpMkAllocVKMem_imp (break;,(v_mk).m_union.m_base.m_alloccount,(v_mk).m_union.m_alter.m_ptr->m_vkres,(v_mk).m_union.m_alter.m_ptr->m_vkglobbuf,(v_mk).m_union.m_alter.m_ptr->m_vkglobdevmem,(v_mk).m_reterr,(v_mk).m_vkinfo.m_buf,(v_mk).m_vkinfo.m_alloc, VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, VK_SHARING_MODE_EXCLUSIVE,(vkdev),(v_mk).m_vkstack.m_memreq,(vkalloccalls),(v_mk).m_union.m_alter.m_i, UCHAR_MAX, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, vkmemprops)
 __ae2fVK_AnnSlpMkAllocVKMem_imp (break;, sizeof(ae2f_float_t) *((outc)),(v_mk).m_union.m_alter.m_ptr->m_vkres,(v_mk).m_union.m_alter.m_ptr->m_vklocbuf,(v_mk).m_union.m_alter.m_ptr->m_vklocdevmem,(v_mk).m_reterr,(v_mk).m_vkinfo.m_buf,(v_mk).m_vkinfo.m_alloc, VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, VK_SHARING_MODE_EXCLUSIVE,(vkdev),(v_mk).m_vkstack.m_memreq,(vkalloccalls),(v_mk).m_union.m_alter.m_i, UCHAR_MAX, VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, vkmemprops)
 if (((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateDescriptorSetLayout(vkdev, &(v_mk).m_vkstack.m_layout.m_creatinfo,(vkalloccalls),(v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout)) !=VK_SUCCESS)
 unless ((v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout[0])
 if (((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateDescriptorSetLayout(vkdev, &(v_mk).m_vkstack.m_layout.m_creatinfo,(vkalloccalls),(v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout+1)) !=VK_SUCCESS)
 unless ((v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout[1])
memset v_mk m_vkinfo sizeof ((v_mk).m_vkinfo.m_pipelayoutcreat))
 __ae2fVK_AnnSlpMkOnePipeLayout_imp (break;, v_mk, ae2fVK_eAnnSlpPipeLayouts_kPredict, sizeof(size_t), vkalloccalls, vkdev)
 if ((v_mk).m_union.m_alter.m_ptr->m_vkres !=VK_SUCCESS)
 __ae2fVK_AnnSlpMkOnePipeLayout_imp (break;, v_mk, ae2fVK_eAnnSlpPipeLayouts_kFollow, sizeof(ae2f_float_t) *2, vkalloccalls, vkdev)
 __ae2fVK_AnnSlpMkOnePipeLayout_imp (break;, v_mk, ae2fVK_eAnnSlpPipeLayouts_kFit, sizeof(ae2f_float_t) *2, vkalloccalls, vkdev)
 assert ((vkcldeclaration) &&"vkcldeclaration is null")
 assert ((vkcldefinition) &&"vkcldefinition is null")
 if ((v_mk).m_reterr)
 assert ((v_mk).m_clsrc.m_void)
 if (((v_mk).m_vkstack.m_isgood=clspvCompileFromSourcesString(1, ae2f_reinterpret_cast(const size_t *, NULL), ae2f_const_cast(const char **restrict,(&(v_mk).m_clsrc.m_char)),"" "-pod-pushconstant " "-cl-fast-relaxed-math " "-cl-single-precision-constant", &(v_mk).m_clout.m_char, &(v_mk).m_clout_len, &(v_mk).m_unused)) !=CLSPV_SUCCESS)
 free ((v_mk).m_clsrc.m_void)
 assert ((v_mk).m_unused)
 assert ((v_mk).m_union.m_base.m_ptr &&"clspvCompileFromSourcesString has done something weird")
 assert ((v_mk).m_vkinfo.m_shadermodulecreat.codeSize)
 if (((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateShaderModule(vkdev, &(v_mk).m_vkinfo.m_shadermodulecreat,(vkalloccalls), &(v_mk).m_union.m_alter.m_ptr->m_vkshadermodule)) !=VK_SUCCESS)
 unless ((v_mk).m_union.m_alter.m_ptr->m_vkshadermodule)
 __ae2fVK_AnnSlpMkLoadPipeCreat_imp (break,(v_mk).m_reterr,(v_mk).m_pipecreat,(v_mk).m_union.m_alter.m_ptr->m_vkpipelayout,(v_mk).m_union.m_alter.m_ptr->m_vkshadermodule, "kFollow",(ae2fVK_eAnnSlpPipes_kFollow),(ae2fVK_eAnnSlpPipeLayouts_kFollow))
 __ae2fVK_AnnSlpMkLoadPipeCreat_imp (break,(v_mk).m_reterr,(v_mk).m_pipecreat,(v_mk).m_union.m_alter.m_ptr->m_vkpipelayout,(v_mk).m_union.m_alter.m_ptr->m_vkshadermodule, "kFit",(ae2fVK_eAnnSlpPipes_kFit),(ae2fVK_eAnnSlpPipeLayouts_kFit))
 __ae2fVK_AnnSlpMkLoadPipeCreat_imp (break,(v_mk).m_reterr,(v_mk).m_pipecreat,(v_mk).m_union.m_alter.m_ptr->m_vkpipelayout,(v_mk).m_union.m_alter.m_ptr->m_vkshadermodule, "kPredict", ae2fVK_eAnnSlpPipes_kPredict, ae2fVK_eAnnSlpPipeLayouts_kPredict)
 __ae2fVK_AnnSlpMkLoadPipeCreat_imp (break,(v_mk).m_reterr,(v_mk).m_pipecreat,(v_mk).m_union.m_alter.m_ptr->m_vkpipelayout,(v_mk).m_union.m_alter.m_ptr->m_vkshadermodule, "kTrain",(ae2fVK_eAnnSlpPipes_kTrain),(ae2fVK_eAnnSlpPipeLayouts_kTrain))
 if (((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateComputePipelines((vkdev), VK_NULL_HANDLE, ae2fVK_eAnnSlpPipes_LEN,(v_mk).m_pipecreat,(vkalloccalls),(v_mk).m_union.m_alter.m_ptr->m_vkpipeline)) !=VK_SUCCESS)
 __ae2fVK_AnnSlpMkCreatDescPool (break,(v_mk).m_vkstack.m_creatdescpool.m_creatinfo,(v_mk).m_vkstack.m_creatdescpool.m_sz,(v_mk).m_union.m_alter.m_ptr->m_vkdescpool[ae2fVK_eAnnSlpDescPools_kPredict],(v_mk).m_reterr,(v_mk).m_union.m_alter.m_ptr->m_vkres,(vkdev),(vkalloccalls), VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 1)
 __ae2fVK_AnnSlpMkCreatDescPool (break,(v_mk).m_vkstack.m_creatdescpool.m_creatinfo,(v_mk).m_vkstack.m_creatdescpool.m_sz,(v_mk).m_union.m_alter.m_ptr->m_vkdescpool[ae2fVK_eAnnSlpDescPools_kTrain],(v_mk).m_reterr,(v_mk).m_union.m_alter.m_ptr->m_vkres,(vkdev),(vkalloccalls), VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 2)
 while (0)
 clspvFreeOutputBuildObjs ((v_mk).m_clout.m_char,(v_mk).m_unused)
 if ((v_mk).m_union.m_alter.m_ptr->m_vkres)

Variables

ae2f_err_t v_errbit
ae2f_err_t const unsigned char memtypeidx_invalid_minus_one
ae2f_err_t const unsigned char const VkMemoryPropertyFlagBits vkpropflag_req
ae2f_err_t const unsigned char const VkMemoryPropertyFlagBits const VkPhysicalDeviceMemoryProperties vkphydevmemprops
VkResult r_vkres
VkResult VkBuffer r_vkbuf
VkResult VkBuffer VkBufferCreateInfo v_vkbufcreatinfo
VkResult VkBuffer VkBufferCreateInfo ae2f_err_t v_reterr
VkResult VkBuffer VkBufferCreateInfo ae2f_err_t const VkBufferUsageFlags vkbufuseflags
VkResult VkBuffer VkBufferCreateInfo ae2f_err_t const VkBufferUsageFlags const VkSharingMode vksharemode
VkResult VkBuffer VkBufferCreateInfo ae2f_err_t const VkBufferUsageFlags const VkSharingMode const VkDevice vkdev
VkResult VkBuffer VkBufferCreateInfo ae2f_err_t const VkBufferUsageFlags const VkSharingMode const VkDevice ae2f_opt const VkAllocationCallbacks * vkalloccalls
v_vkbufcreatinfo pNext = 0
v_vkbufcreatinfo usage = (vkbufuseflags)
v_vkbufcreatinfo pQueueFamilyIndices = 0
v_vkbufcreatinfo queueFamilyIndexCount = 0
v_vkbufcreatinfo sharingMode = vksharemode
v_vkbufcreatinfo flags = 0
v_vkbufcreatinfo size = (sz)
VkResult VkBuffer VkDeviceMemory r_vkdevmem
VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo v_memallocinfo
VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements v_vkmemreq
VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements ae2f_opt const VkAllocationCallbacks unsigned char v_memtypeidx
v_memallocinfo sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO
v_memallocinfo allocationSize = (v_vkmemreq).size
v_memallocinfo memoryTypeIndex = (v_memtypeidx)
VkComputePipelineCreateInfo *const pipecreat = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO
VkComputePipelineCreateInfo *const VkPipelineLayout *const pipelayout
VkComputePipelineCreateInfo *const VkPipelineLayout *const const VkShaderModule shadermod
VkComputePipelineCreateInfo *const VkPipelineLayout *const const VkShaderModule const char *const entrypoint
VkComputePipelineCreateInfo *const VkPipelineLayout *const const VkShaderModule const char *const const ae2fVK_eAnnSlpPipes idx_pipe
VkComputePipelineCreateInfo *const VkPipelineLayout *const const VkShaderModule const char *const const ae2fVK_eAnnSlpPipes const ae2fVK_eAnnSlpPipeLayouts idx_pipelayout
pipecreat[idx_pipelayout = ((pipelayout)[idx_pipelayout])
pipecreat[idx_pipebasePipelineHandle = NULL
pipecreat[idx_pipebasePipelineIndex = -1
pipecreat[idx_pipe] stage stage = VK_SHADER_STAGE_COMPUTE_BIT
pipecreat[idx_pipe] stage pName = entrypoint
pipecreat[idx_pipe] stage pSpecializationInfo = NULL
VkPipelineLayoutCreateInfo v_vkpipelayoutcreatinfo
VkPipelineLayoutCreateInfo ae2f_err_t r_reterr
VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp *const iv_slpptr
VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp *const const ae2fVK_eAnnSlpPipeLayouts idx
VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp *const const ae2fVK_eAnnSlpPipeLayouts const uint32_t szrequired
VkDescriptorPoolSize v_vkdescpoolsz
VkDescriptorPoolSize VkDescriptorPool r_vkdescpool
VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice i_vkdev
VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const i_vkptrAlloc
VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const const VkDescriptorPoolCreateFlagBits i_vkdescpoolcreatflags
VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const const VkDescriptorPoolCreateFlagBits const VkDescriptorType i_vkdesctype
VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const const VkDescriptorPoolCreateFlagBits const VkDescriptorType const uint32_t i_vkdescpoolsz_count
v_vkdescpoolsz descriptorCount = (i_vkdescpoolsz_count)
v_vkdescpoolcreatinfo poolSizeCount = 1
v_vkdescpoolcreatinfo pPoolSizes = &(v_vkdescpoolsz)
v_vkdescpoolcreatinfo maxSets = 1
ae2f_float_t *const weight_opt
ae2f_float_t *const ae2f_float_t *const bias_opt
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const cache_opt
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t inc
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t outc
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t prm_offset
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t extra
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t *const act
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t *const ae2f_opt ae2f_AnnAct_t *const actderiv
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 lossderiv
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 learningrate
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 learningrate_bias
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 vkmemprops
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 vkcldeclaration
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 vkcldefinition
v_mk m_reterr = ae2f_errGlob_OK
v_mk m_clout m_void = NULL
 do
v_mk m_union m_base m_alloccount
v_mk m_union m_alter m_ptr m_vkdev = vkdev
v_mk m_union m_alter m_ptr m_vkalloccalls = vkalloccalls
v_mk m_vkstack m_layout m_bind[0] binding = 0
v_mk m_vkstack m_layout m_bind[0] descriptorType = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
v_mk m_vkstack m_layout m_bind[0] stageFlags = VK_SHADER_STAGE_COMPUTE_BIT
v_mk m_vkstack m_layout m_bind[0] pImmutableSamplers = NULL
v_mk m_vkstack m_layout m_bind [1] = (v_mk).m_vkstack.m_layout.m_bind[0]
v_mk m_vkstack m_layout m_creatinfo pBindings = (v_mk).m_vkstack.m_layout.m_bind
v_mk m_vkstack m_layout m_creatinfo bindingCount = 1
memset v_mk m_vkinfo m_pipelayoutcreat
v_mk m_vkstack m_layout m_pushconstant offset = 0
v_mk m_vkinfo m_pipelayoutcreat setLayoutCount = 1
v_mk m_vkinfo m_pipelayoutcreat pushConstantRangeCount = 1
v_mk m_vkinfo m_pipelayoutcreat pPushConstantRanges = &(v_mk).m_vkstack.m_layout.m_pushconstant
v_mk m_vkinfo m_pipelayoutcreat pSetLayouts = (v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout
v_mk m_unused = ae2f_static_cast(char*, NULL)
v_mk m_clout_len = 0
v_mk m_vkinfo m_shadermodulecreat codeSize = (v_mk).m_clout_len
v_mk m_vkinfo m_shadermodulecreat pCode = (v_mk).m_clout.m_wrds
ae2f_err_t ir_err
ae2f_err_t const char *restrict i_first
ae2f_err_t const char *restrict const char *restrict i_second

Macro Definition Documentation

◆ __ae2fVK_AnnSlpMkOnePipeLayout_imp

#define __ae2fVK_AnnSlpMkOnePipeLayout_imp ( CMDONERR,
v_mk,
i_idx,
i_szrequired,
iv_vkalloccalls,
i_vkdev )
Value:
, (v_mk).m_vkstack.m_layout.m_pushconstant \
, (v_mk).m_vkinfo.m_pipelayoutcreat \
, (v_mk).m_reterr \
, (v_mk).m_union.m_alter.m_ptr \
, (i_idx), (i_szrequired), (iv_vkalloccalls), (i_vkdev) \
);
#define __ae2fVK_AnnSlpMkOnePipeLayoutVerbose_imp(CMDONERR, v_vkpushconstrange, v_vkpipelayoutcreatinfo, r_reterr, iv_slpptr, idx, szrequired, vkalloccalls, vkdev)
Definition Slp.auto.h:248
#define CMDONERR
Definition Slp.auto.h:27
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 i_vkdev
Definition Mlp.def.cc:68

Make one pipeline layout with given push-constant size.

Template Parameters
CMDONERRBreak logic code for exception handeling.
Parameters
v_mk: {ae2fVK_AnnSlpMk_t&}
i_idx: {const ae2fVK_eAnnSlpPipeLayouts}
i_szrequired: {const size_t}
iv_vkalloccalls: {const VkAllocationCallbacks* const}
i_vkdev: {const VkDevice}

Definition at line 8962 of file Slp.auto.def.cc.

◆ ae2fVK_Ann_Slp_c

#define ae2fVK_Ann_Slp_c

include detected Path cursor first fp: (nil) Failed but ignoring it. include detected Path cursor first fp: (nil) Failed but ignoring it.

Definition at line 23 of file Slp.auto.def.cc.

◆ CMDONERR

#define CMDONERR

include detected Path cursor first fp: (nil) Failed but ignoring it. include detected Path cursor first fp: (nil) Failed but ignoring it. include detected Path cursor first fp: (nil) Failed but ignoring it.

Definition at line 50 of file Slp.auto.def.cc.

◆ COMMANDONRECORDING

#define COMMANDONRECORDING

◆ T

#define T   int

Function Documentation

◆ __ae2f_AnnSlpInitInpSz_imp()

__ae2f_AnnSlpInitInpSz_imp ( (v_mk).m_union.m_base. m_alloccount,
0 ,
0 ,
0 ,
inc ,
outc  )

◆ __ae2fVK_AnnSlpMkAllocVKMem_imp() [1/2]

__ae2fVK_AnnSlpMkAllocVKMem_imp ( break; ,
sizeof(ae2f_float_t) *((outc)) ,
(v_mk).m_union.m_alter.m_ptr-> m_vkres,
(v_mk).m_union.m_alter.m_ptr-> m_vklocbuf,
(v_mk).m_union.m_alter.m_ptr-> m_vklocdevmem,
(v_mk). m_reterr,
(v_mk).m_vkinfo. m_buf,
(v_mk).m_vkinfo. m_alloc,
VK_BUFFER_USAGE_STORAGE_BUFFER_BIT ,
VK_SHARING_MODE_EXCLUSIVE ,
(vkdev) ,
(v_mk).m_vkstack. m_memreq,
(vkalloccalls) ,
(v_mk).m_union.m_alter. m_i,
UCHAR_MAX ,
VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT ,
vkmemprops  )

the local memory

◆ __ae2fVK_AnnSlpMkAllocVKMem_imp() [2/2]

__ae2fVK_AnnSlpMkAllocVKMem_imp ( break; ,
(v_mk).m_union.m_base. m_alloccount,
(v_mk).m_union.m_alter.m_ptr-> m_vkres,
(v_mk).m_union.m_alter.m_ptr-> m_vkglobbuf,
(v_mk).m_union.m_alter.m_ptr-> m_vkglobdevmem,
(v_mk). m_reterr,
(v_mk).m_vkinfo. m_buf,
(v_mk).m_vkinfo. m_alloc,
VK_BUFFER_USAGE_STORAGE_BUFFER_BIT ,
VK_SHARING_MODE_EXCLUSIVE ,
(vkdev) ,
(v_mk).m_vkstack. m_memreq,
(vkalloccalls) ,
(v_mk).m_union.m_alter. m_i,
UCHAR_MAX ,
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT ,
vkmemprops  )

Allocate the global memory

◆ __ae2fVK_AnnSlpMkCreatDescPool() [1/2]

__ae2fVK_AnnSlpMkCreatDescPool ( break ,
(v_mk).m_vkstack.m_creatdescpool. m_creatinfo,
(v_mk).m_vkstack.m_creatdescpool. m_sz,
(v_mk).m_union.m_alter.m_ptr-> m_vkdescpool[ae2fVK_eAnnSlpDescPools_kPredict],
(v_mk). m_reterr,
(v_mk).m_union.m_alter.m_ptr-> m_vkres,
(vkdev) ,
(vkalloccalls) ,
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT ,
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER ,
1  )
Parameters
m_creatinfov_vkcreatinfo
m_vkdescpoolr_vkdescpool

◆ __ae2fVK_AnnSlpMkCreatDescPool() [2/2]

__ae2fVK_AnnSlpMkCreatDescPool ( break ,
(v_mk).m_vkstack.m_creatdescpool. m_creatinfo,
(v_mk).m_vkstack.m_creatdescpool. m_sz,
(v_mk).m_union.m_alter.m_ptr-> m_vkdescpool[ae2fVK_eAnnSlpDescPools_kTrain],
(v_mk). m_reterr,
(v_mk).m_union.m_alter.m_ptr-> m_vkres,
(vkdev) ,
(vkalloccalls) ,
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT ,
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER ,
2  )
Parameters
m_creatinfov_vkcreatinfo
m_vkdescpoolr_vkdescpool

◆ __ae2fVK_AnnSlpMkFndMemProp_imp()

◆ __ae2fVK_AnnSlpMkLoadPipeCreat_imp() [1/4]

__ae2fVK_AnnSlpMkLoadPipeCreat_imp ( break ,
(v_mk). m_reterr,
(v_mk). m_pipecreat,
(v_mk).m_union.m_alter.m_ptr-> m_vkpipelayout,
(v_mk).m_union.m_alter.m_ptr-> m_vkshadermodule,
"kFit" ,
(ae2fVK_eAnnSlpPipes_kFit) ,
(ae2fVK_eAnnSlpPipeLayouts_kFit)  )

◆ __ae2fVK_AnnSlpMkLoadPipeCreat_imp() [2/4]

__ae2fVK_AnnSlpMkLoadPipeCreat_imp ( break ,
(v_mk). m_reterr,
(v_mk). m_pipecreat,
(v_mk).m_union.m_alter.m_ptr-> m_vkpipelayout,
(v_mk).m_union.m_alter.m_ptr-> m_vkshadermodule,
"kFollow" ,
(ae2fVK_eAnnSlpPipes_kFollow) ,
(ae2fVK_eAnnSlpPipeLayouts_kFollow)  )

◆ __ae2fVK_AnnSlpMkLoadPipeCreat_imp() [3/4]

__ae2fVK_AnnSlpMkLoadPipeCreat_imp ( break ,
(v_mk). m_reterr,
(v_mk). m_pipecreat,
(v_mk).m_union.m_alter.m_ptr-> m_vkpipelayout,
(v_mk).m_union.m_alter.m_ptr-> m_vkshadermodule,
"kPredict" ,
ae2fVK_eAnnSlpPipes_kPredict ,
ae2fVK_eAnnSlpPipeLayouts_kPredict  )

◆ __ae2fVK_AnnSlpMkLoadPipeCreat_imp() [4/4]

__ae2fVK_AnnSlpMkLoadPipeCreat_imp ( break ,
(v_mk). m_reterr,
(v_mk). m_pipecreat,
(v_mk).m_union.m_alter.m_ptr-> m_vkpipelayout,
(v_mk).m_union.m_alter.m_ptr-> m_vkshadermodule,
"kTrain" ,
(ae2fVK_eAnnSlpPipes_kTrain) ,
(ae2fVK_eAnnSlpPipeLayouts_kTrain)  )

◆ __ae2fVK_AnnSlpMkOnePipeLayout_imp() [1/3]

__ae2fVK_AnnSlpMkOnePipeLayout_imp ( break; ,
v_mk ,
ae2fVK_eAnnSlpPipeLayouts_kFit ,
sizeof(ae2f_float_t) * 2,
vkalloccalls ,
vkdev  )

◆ __ae2fVK_AnnSlpMkOnePipeLayout_imp() [2/3]

__ae2fVK_AnnSlpMkOnePipeLayout_imp ( break; ,
v_mk ,
ae2fVK_eAnnSlpPipeLayouts_kFollow ,
sizeof(ae2f_float_t) * 2,
vkalloccalls ,
vkdev  )

◆ __ae2fVK_AnnSlpMkOnePipeLayout_imp() [3/3]

__ae2fVK_AnnSlpMkOnePipeLayout_imp ( break; ,
v_mk ,
ae2fVK_eAnnSlpPipeLayouts_kPredict ,
sizeof(size_t) ,
vkalloccalls ,
vkdev  )

◆ ae2f_MAC() [1/2]

ae2f_MAC ( )

Make slp with OpenCL compute shader.

The shader itself is incomplete.
For using it you will need to define three macros as function.
Below is the required snippet.

#define ACT(const ae2f_float_t) -> ae2f_float_t
#define ACT_DERIV(const ae2f_float_t) -> ae2f_float_t
#define LOSS_DERIV( ae2f_float_t* retval const ae2f_float_t* const out , const ae2f_float_t* const out_desired , const size_t index , const size_t length_out_goal );

Parameters
vkcldeclaration
vkcldefinition
r_handlemust be destroyed by free().
i_second_rawmust be guaranteed to be a raw stirng.

◆ ae2f_MAC() [2/2]

ae2f_MAC ( CMDONERR )

◆ assert() [1/8]

assert ( (lossderiv) &&"lossderiv must be specified." )

◆ assert() [2/8]

assert ( (v_mk).m_clsrc. m_void)

◆ assert() [3/8]

assert ( (v_mk).m_union.m_base.m_ptr &&"clspvCompileFromSourcesString has done something weird" )

◆ assert() [4/8]

assert ( (v_mk). m_unused)

◆ assert() [5/8]

assert ( (v_mk).m_vkinfo.m_shadermodulecreat. codeSize)

◆ assert() [6/8]

assert ( (vkcldeclaration) &&"vkcldeclaration is null" )

◆ assert() [7/8]

assert ( (vkcldefinition) &&"vkcldefinition is null" )

◆ assert() [8/8]

assert ( (vkphydevmemprops).memoryTypeCount<=VK_MAX_MEMORY_TYPES &&"Invalid memory type count." )

◆ clspvFreeOutputBuildObjs()

clspvFreeOutputBuildObjs ( (v_mk).m_clout. m_char,
(v_mk). m_unused )

◆ for()

for ( (r_memtypeidx) = (vkphydevmemprops).memoryTypeCount;(r_memtypeidx) -- &&(~((vkphydevmemprops).memoryTypes[(r_memtypeidx)].propertyFlags) &vkpropflag_req) ;)

◆ free()

free ( (v_mk).m_clsrc. m_void)

◆ if() [1/16]

if ( ((iv_slpptr) ->m_vkres=vkCreatePipelineLayout(vkdev, &(v_vkpipelayoutcreatinfo),(vkalloccalls), &(iv_slpptr) ->m_vkpipelayout[idx])) ! = VK_SUCCESS)

Definition at line 8925 of file Slp.auto.def.cc.

◆ if() [2/16]

if ( ((r_vkres)=vkAllocateMemory(vkdev, &(v_memallocinfo),(vkalloccalls), &(r_vkdevmem))) ! = VK_SUCCESS)

Definition at line 8841 of file Slp.auto.def.cc.

◆ if() [3/16]

if ( ((r_vkres)=vkBindBufferMemory(vkdev, r_vkbuf, r_vkdevmem, 0)) ! = VK_SUCCESS)

Definition at line 8858 of file Slp.auto.def.cc.

◆ if() [4/16]

if ( ((r_vkres)=vkCreateBuffer(vkdev, &(v_vkbufcreatinfo), vkalloccalls, &(r_vkbuf))) ! = VK_SUCCESS)

Definition at line 8751 of file Slp.auto.def.cc.

◆ if() [5/16]

if ( ((r_vkres)=vkCreateDescriptorPool((i_vkdev), &(v_vkdescpoolcreatinfo),(i_vkptrAlloc), &(r_vkdescpool))) ! = VK_SUCCESS)

I actually forgot to initialise this? lol;;

Definition at line 8998 of file Slp.auto.def.cc.

◆ if() [6/16]

if ( ((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateComputePipelines((vkdev), VK_NULL_HANDLE, ae2fVK_eAnnSlpPipes_LEN,(v_mk).m_pipecreat,(vkalloccalls),(v_mk).m_union.m_alter.m_ptr->m_vkpipeline)) ! = VK_SUCCESS)

Definition at line 9394 of file Slp.auto.def.cc.

◆ if() [7/16]

if ( ((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateDescriptorSetLayout(vkdev, &(v_mk).m_vkstack.m_layout.m_creatinfo,(vkalloccalls),(v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout)) ! = VK_SUCCESS)

Definition at line 9173 of file Slp.auto.def.cc.

◆ if() [8/16]

if ( ((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateDescriptorSetLayout(vkdev, &(v_mk).m_vkstack.m_layout.m_creatinfo,(vkalloccalls),(v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout+1)) ! = VK_SUCCESS)

Definition at line 9191 of file Slp.auto.def.cc.

◆ if() [9/16]

if ( ((v_mk).m_union.m_alter.m_ptr->m_vkres=vkCreateShaderModule(vkdev, &(v_mk).m_vkinfo.m_shadermodulecreat,(vkalloccalls), &(v_mk).m_union.m_alter.m_ptr->m_vkshadermodule)) ! = VK_SUCCESS)

Definition at line 9332 of file Slp.auto.def.cc.

◆ if() [10/16]

if ( ((v_mk).m_vkstack.m_isgood=clspvCompileFromSourcesString(1, ae2f_reinterpret_cast(const size_t *, NULL), ae2f_const_cast(const char **restrict,(&(v_mk).m_clsrc.m_char)),"" "-pod-pushconstant " "-cl-fast-relaxed-math " "-cl-single-precision-constant", &(v_mk).m_clout.m_char, &(v_mk).m_clout_len, &(v_mk).m_unused)) ! = CLSPV_SUCCESS)

Definition at line 9288 of file Slp.auto.def.cc.

◆ if() [11/16]

if ( (r_memtypeidx) = = (memtypeidx_invalid_minus_one))

Definition at line 8721 of file Slp.auto.def.cc.

◆ if() [12/16]

if ( (szrequired) & 0b11)

Definition at line 8919 of file Slp.auto.def.cc.

◆ if() [13/16]

if ( (v_mk). m_reterr)

Definition at line 9277 of file Slp.auto.def.cc.

◆ if() [14/16]

if ( (v_mk).m_union.m_alter.m_ptr->m_vkres ! = VK_SUCCESS)

Definition at line 9235 of file Slp.auto.def.cc.

◆ if() [15/16]

if ( (v_mk).m_union.m_alter.m_ptr-> m_vkres)

Definition at line 9453 of file Slp.auto.def.cc.

◆ if() [16/16]

if ( (v_mk).m_union.m_base.m_ptr->m_Slp. m_inc[0],
UINT32_MAX  )

Definition at line 9082 of file Slp.auto.def.cc.

◆ sizeof()

memset v_mk m_vkinfo sizeof ( (v_mk).m_vkinfo. m_pipelayoutcreat)

◆ unless() [1/10]

unless ( (iv_slpptr) -> m_vkpipelayout[idx])

Definition at line 8936 of file Slp.auto.def.cc.

◆ unless() [2/10]

unless ( (pipelayout) [idx_pipelayout])

Definition at line 8885 of file Slp.auto.def.cc.

◆ unless() [3/10]

unless ( (r_vkbuf) )

Definition at line 8763 of file Slp.auto.def.cc.

◆ unless() [4/10]

unless ( (r_vkdescpool) )

Definition at line 9009 of file Slp.auto.def.cc.

◆ unless() [5/10]

unless ( (r_vkdevmem) )

Definition at line 8852 of file Slp.auto.def.cc.

◆ unless() [6/10]

unless ( (v_mk).m_union.m_alter.m_ptr-> m_vkdescsetlayout[0])

Definition at line 9183 of file Slp.auto.def.cc.

◆ unless() [7/10]

unless ( (v_mk).m_union.m_alter.m_ptr-> m_vkdescsetlayout[1])

Definition at line 9201 of file Slp.auto.def.cc.

◆ unless() [8/10]

unless ( (v_mk).m_union.m_alter.m_ptr-> m_vkshadermodule)

Definition at line 9343 of file Slp.auto.def.cc.

◆ unless() [9/10]

unless ( (v_vkmemreq).size >=(v_vkbufcreatinfo). size)

Definition at line 8822 of file Slp.auto.def.cc.

◆ unless() [10/10]

unless ( (v_vkmemreq).size<=(vkphydevmemprops).memoryHeaps.heapIndex]. size[(vkphydevmemprops).memoryTypes[v_memtypeidx])

Definition at line 8828 of file Slp.auto.def.cc.

◆ vkGetBufferMemoryRequirements()

vkGetBufferMemoryRequirements ( vkdev ,
r_vkbuf ,
& v_vkmemreq )

◆ while()

while ( 0 )

Variable Documentation

◆ act

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t* const act

Definition at line 9051 of file Slp.auto.def.cc.

◆ actderiv

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t* const ae2f_opt ae2f_AnnAct_t* const actderiv

Definition at line 9052 of file Slp.auto.def.cc.

◆ allocationSize

v_memallocinfo allocationSize = (v_vkmemreq).size

Definition at line 8837 of file Slp.auto.def.cc.

◆ basePipelineHandle

pipecreat [idx_pipe] basePipelineHandle = NULL

Definition at line 8893 of file Slp.auto.def.cc.

◆ basePipelineIndex

pipecreat [idx_pipe] basePipelineIndex = -1

Definition at line 8894 of file Slp.auto.def.cc.

◆ bias_opt

ae2f_float_t* const ae2f_float_t* const bias_opt

Definition at line 9045 of file Slp.auto.def.cc.

◆ binding

v_mk m_vkstack m_layout m_bind [1] binding = 0

Definition at line 9150 of file Slp.auto.def.cc.

◆ bindingCount

v_mk m_vkstack m_layout m_creatinfo bindingCount = 1

Definition at line 9164 of file Slp.auto.def.cc.

◆ cache_opt

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const cache_opt

Definition at line 9046 of file Slp.auto.def.cc.

◆ codeSize

v_mk m_vkinfo m_shadermodulecreat codeSize = (v_mk).m_clout_len

Definition at line 9316 of file Slp.auto.def.cc.

◆ descriptorCount

v_mk m_vkstack m_layout m_bind [0] descriptorCount = (i_vkdescpoolsz_count)

Definition at line 8988 of file Slp.auto.def.cc.

◆ descriptorType

v_mk m_vkstack m_layout m_bind [0] descriptorType = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER

Definition at line 9151 of file Slp.auto.def.cc.

◆ do

do
Initial value:
{
(v_mk).m_union.m_base, (weight_opt)
, (inc), (outc)
, ((prm_offset) + sizeof(ae2fVK_AnnSlp) - sizeof(ae2f_AnnSlp))
, (extra)
)
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 learningrate_bias
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t extra
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t *const ae2f_opt ae2f_AnnAct_t *const actderiv
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t prm_offset
ae2f_float_t *const ae2f_float_t *const bias_opt
ae2f_float_t *const weight_opt
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 lossderiv
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const cache_opt
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 learningrate
ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t ae2f_opt ae2f_AnnAct_t *const act
ae2f_SHAREDEXPORT void outc
Definition Slp.imp.c:22
ae2f_SHAREDEXPORT void inc
Definition Slp.imp.c:21
#define __ae2f_AnnSlpMk_imp(...)
Definition Slp.auto.h:232

Definition at line 9071 of file Slp.auto.def.cc.

◆ entrypoint

VkComputePipelineCreateInfo* const VkPipelineLayout* const const VkShaderModule const char* const entrypoint

Definition at line 8875 of file Slp.auto.def.cc.

◆ extra

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t ae2f_opt const size_t ae2f_opt const size_t extra

Definition at line 9050 of file Slp.auto.def.cc.

◆ flags

v_mk m_vkinfo m_shadermodulecreat flags = 0

Definition at line 8748 of file Slp.auto.def.cc.

◆ i_first

ae2f_err_t const char* restrict i_first

Definition at line 9467 of file Slp.auto.def.cc.

◆ i_second

ae2f_err_t const char* restrict const char* restrict i_second

Definition at line 9468 of file Slp.auto.def.cc.

◆ i_vkdescpoolcreatflags

ae2fVK_AnnSlpDescPool ae2f_err_t ae2fVK_AnnSlp const VkDescriptorPoolCreateFlagBits i_vkdescpoolcreatflags

Definition at line 8982 of file Slp.auto.def.cc.

◆ i_vkdescpoolsz_count

VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const const VkDescriptorPoolCreateFlagBits const VkDescriptorType const uint32_t i_vkdescpoolsz_count
Initial value:
{
VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const const VkDescriptorPoolCreateFlagBits const VkDescriptorType i_vkdesctype
VkDescriptorPoolSize v_vkdescpoolsz

Definition at line 8984 of file Slp.auto.def.cc.

◆ i_vkdesctype

VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks *const const VkDescriptorPoolCreateFlagBits const VkDescriptorType i_vkdesctype

Definition at line 8983 of file Slp.auto.def.cc.

◆ i_vkdev

VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice i_vkdev

Definition at line 8980 of file Slp.auto.def.cc.

◆ i_vkptrAlloc

VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult const VkDevice const VkAllocationCallbacks* const i_vkptrAlloc

Definition at line 8981 of file Slp.auto.def.cc.

◆ idx

VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp* const const ae2fVK_eAnnSlpPipeLayouts idx

Definition at line 8910 of file Slp.auto.def.cc.

◆ idx_pipe

VkComputePipelineCreateInfo* const VkPipelineLayout* const const VkShaderModule const char* const const ae2fVK_eAnnSlpPipes idx_pipe

Definition at line 8876 of file Slp.auto.def.cc.

◆ idx_pipelayout

VkComputePipelineCreateInfo* const VkPipelineLayout* const const VkShaderModule const char* const const ae2fVK_eAnnSlpPipes const ae2fVK_eAnnSlpPipeLayouts idx_pipelayout
Initial value:
{
memset(
, sizeof((pipecreat)[0])
)
VkComputePipelineCreateInfo *const pipecreat
VkComputePipelineCreateInfo *const VkPipelineLayout *const const VkShaderModule const char *const const ae2fVK_eAnnSlpPipes idx_pipe

Definition at line 8877 of file Slp.auto.def.cc.

◆ inc

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t inc

Definition at line 9047 of file Slp.auto.def.cc.

◆ ir_err

ae2f_err_t ir_err

Definition at line 9465 of file Slp.auto.def.cc.

◆ iv_slpptr

VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp* const iv_slpptr

Definition at line 8908 of file Slp.auto.def.cc.

◆ layout

Definition at line 8891 of file Slp.auto.def.cc.

◆ learningrate

Definition at line 9054 of file Slp.auto.def.cc.

◆ learningrate_bias

Definition at line 9055 of file Slp.auto.def.cc.

◆ lossderiv

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t 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 lossderiv

Definition at line 9053 of file Slp.auto.def.cc.

◆ m_alloccount

v_mk m_union m_base m_alloccount
Initial value:
=
(v_mk).m_union.m_base.m_alloccount
- sizeof(ae2f_AnnSlp)
(sizeof(ae2f_float_t) * (outc) * 2)
, (sizeof(ae2f_float_t) * ((outc) + (inc)))
)
#define ae2f_CmpGetGt(a, b)
Definition Cmp.h:20
ae2f_float ae2f_float_t
Definition Float.h:38

Definition at line 9096 of file Slp.auto.def.cc.

◆ m_bind

v_mk m_vkstack m_layout m_bind = (v_mk).m_vkstack.m_layout.m_bind[0]

Definition at line 9158 of file Slp.auto.def.cc.

◆ m_clout_len

v_mk m_clout_len = 0

Definition at line 9285 of file Slp.auto.def.cc.

◆ m_pipelayoutcreat

memset v_mk m_vkinfo m_pipelayoutcreat

Definition at line 9208 of file Slp.auto.def.cc.

◆ m_reterr

v_mk m_reterr = ae2f_errGlob_OK

Definition at line 9068 of file Slp.auto.def.cc.

◆ m_unused

v_mk m_unused = ae2f_static_cast(char*, NULL)

Definition at line 9284 of file Slp.auto.def.cc.

◆ m_vkalloccalls

v_mk m_union m_alter m_ptr m_vkalloccalls = vkalloccalls

Definition at line 9106 of file Slp.auto.def.cc.

◆ m_vkdev

v_mk m_union m_alter m_ptr m_vkdev = vkdev

weight, bias, deltacache

Definition at line 9105 of file Slp.auto.def.cc.

◆ m_void

v_mk m_clout m_void = NULL

Definition at line 9069 of file Slp.auto.def.cc.

◆ maxSets

v_vkdescpoolcreatinfo maxSets = 1

Definition at line 8996 of file Slp.auto.def.cc.

◆ memoryTypeIndex

v_memallocinfo memoryTypeIndex = (v_memtypeidx)

Definition at line 8838 of file Slp.auto.def.cc.

◆ memtypeidx_invalid_minus_one

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements ae2f_opt const VkAllocationCallbacks unsigned char const unsigned char memtypeidx_invalid_minus_one

Definition at line 8704 of file Slp.auto.def.cc.

◆ offset

v_mk m_vkstack m_layout m_pushconstant offset = 0

Definition at line 9212 of file Slp.auto.def.cc.

◆ outc

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t outc

Definition at line 9048 of file Slp.auto.def.cc.

◆ pBindings

v_mk m_vkstack m_layout m_creatinfo pBindings = (v_mk).m_vkstack.m_layout.m_bind

Definition at line 9162 of file Slp.auto.def.cc.

◆ pCode

v_mk m_vkinfo m_shadermodulecreat pCode = (v_mk).m_clout.m_wrds

Definition at line 9319 of file Slp.auto.def.cc.

◆ pImmutableSamplers

v_mk m_vkstack m_layout m_bind [0] pImmutableSamplers = NULL

Definition at line 9156 of file Slp.auto.def.cc.

◆ pipecreat

pipecreat = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO

Definition at line 8872 of file Slp.auto.def.cc.

◆ pipelayout

VkComputePipelineCreateInfo* const VkPipelineLayout* const pipelayout

Definition at line 8873 of file Slp.auto.def.cc.

◆ pName

Definition at line 8899 of file Slp.auto.def.cc.

◆ pNext

v_mk m_vkinfo m_shadermodulecreat pNext = 0

Definition at line 8743 of file Slp.auto.def.cc.

◆ poolSizeCount

v_vkdescpoolcreatinfo poolSizeCount = 1

Definition at line 8994 of file Slp.auto.def.cc.

◆ pPoolSizes

v_vkdescpoolcreatinfo pPoolSizes = &(v_vkdescpoolsz)

Definition at line 8995 of file Slp.auto.def.cc.

◆ pPushConstantRanges

v_mk m_vkinfo m_pipelayoutcreat pPushConstantRanges = &(v_mk).m_vkstack.m_layout.m_pushconstant

Definition at line 9221 of file Slp.auto.def.cc.

◆ pQueueFamilyIndices

v_vkbufcreatinfo pQueueFamilyIndices = 0

Definition at line 8745 of file Slp.auto.def.cc.

◆ prm_offset

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t ae2f_opt const size_t prm_offset

Definition at line 9049 of file Slp.auto.def.cc.

◆ pSetLayouts

v_mk m_vkinfo m_pipelayoutcreat pSetLayouts = (v_mk).m_union.m_alter.m_ptr->m_vkdescsetlayout

Definition at line 9224 of file Slp.auto.def.cc.

◆ pSpecializationInfo

pipecreat [idx_pipe] stage pSpecializationInfo = NULL

Definition at line 8900 of file Slp.auto.def.cc.

◆ pushConstantRangeCount

v_mk m_vkinfo m_pipelayoutcreat pushConstantRangeCount = 1

Definition at line 9219 of file Slp.auto.def.cc.

◆ queueFamilyIndexCount

v_vkbufcreatinfo queueFamilyIndexCount = 0

Definition at line 8746 of file Slp.auto.def.cc.

◆ r_reterr

ae2fVK_AnnSlpDescPool ae2f_err_t r_reterr

Definition at line 8907 of file Slp.auto.def.cc.

◆ r_vkbuf

VkResult VkBuffer r_vkbuf

Definition at line 8731 of file Slp.auto.def.cc.

◆ r_vkdescpool

VkDescriptorPoolSize VkDescriptorPool r_vkdescpool

Definition at line 8976 of file Slp.auto.def.cc.

◆ r_vkdevmem

VkResult VkBuffer VkDeviceMemory r_vkdevmem

Definition at line 8774 of file Slp.auto.def.cc.

◆ r_vkres

VkDescriptorPoolSize VkDescriptorPool ae2f_err_t VkResult r_vkres

Definition at line 8730 of file Slp.auto.def.cc.

◆ setLayoutCount

v_mk m_vkinfo m_pipelayoutcreat setLayoutCount = 1

Definition at line 9218 of file Slp.auto.def.cc.

◆ shadermod

VkComputePipelineCreateInfo* const VkPipelineLayout* const const VkShaderModule shadermod

Definition at line 8874 of file Slp.auto.def.cc.

◆ sharingMode

Definition at line 8747 of file Slp.auto.def.cc.

◆ size

v_vkbufcreatinfo size = (sz)

Definition at line 8749 of file Slp.auto.def.cc.

◆ stage

pipecreat [idx_pipe] stage stage = VK_SHADER_STAGE_COMPUTE_BIT

Definition at line 8897 of file Slp.auto.def.cc.

◆ stageFlags

v_mk m_vkstack m_layout m_pushconstant stageFlags = VK_SHADER_STAGE_COMPUTE_BIT

Definition at line 9154 of file Slp.auto.def.cc.

◆ sType

v_mk m_vkinfo m_shadermodulecreat sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO

Definition at line 8836 of file Slp.auto.def.cc.

◆ szrequired

VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp* const const ae2fVK_eAnnSlpPipeLayouts const uint32_t szrequired

Definition at line 8911 of file Slp.auto.def.cc.

◆ usage

Definition at line 8744 of file Slp.auto.def.cc.

◆ v_errbit

VkResult VkBuffer VkDeviceMemory ae2f_err_t v_errbit

Definition at line 8703 of file Slp.auto.def.cc.

◆ v_memallocinfo

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo v_memallocinfo

Definition at line 8778 of file Slp.auto.def.cc.

◆ v_memtypeidx

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements ae2f_opt const VkAllocationCallbacks unsigned char v_memtypeidx

Definition at line 8788 of file Slp.auto.def.cc.

◆ v_reterr

VkResult VkBuffer VkBufferCreateInfo ae2f_err_t v_reterr

Definition at line 8734 of file Slp.auto.def.cc.

◆ v_vkbufcreatinfo

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo v_vkbufcreatinfo

Definition at line 8733 of file Slp.auto.def.cc.

◆ v_vkdescpoolsz

VkDescriptorPoolSize v_vkdescpoolsz

Definition at line 8974 of file Slp.auto.def.cc.

◆ v_vkmemreq

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements v_vkmemreq

Definition at line 8784 of file Slp.auto.def.cc.

◆ v_vkpipelayoutcreatinfo

VkPipelineLayoutCreateInfo v_vkpipelayoutcreatinfo

Definition at line 8906 of file Slp.auto.def.cc.

◆ vkalloccalls

ae2f_float_t *const ae2f_float_t *const ae2f_float_t *const const uint32_t const uint32_t 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 vkalloccalls
Initial value:
{
(v_vkbufcreatinfo).sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO
VkResult VkBuffer VkBufferCreateInfo v_vkbufcreatinfo
v_mk m_U2 m_vkdescsetlayoutcreatinfo sType
Definition Mlp.def.cc:232

Definition at line 8739 of file Slp.auto.def.cc.

◆ vkbufuseflags

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags vkbufuseflags

Definition at line 8736 of file Slp.auto.def.cc.

◆ vkcldeclaration

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t 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 vkcldeclaration

Definition at line 9061 of file Slp.auto.def.cc.

◆ vkcldefinition

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t 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 vkcldefinition
Initial value:
{
assert((vkdev) && "Vulkan device null check")
VkResult VkBuffer VkBufferCreateInfo ae2f_err_t const VkBufferUsageFlags const VkSharingMode const VkDevice vkdev
assert((v_predict).m_k==(mlp).m_depth - 2)

Definition at line 9062 of file Slp.auto.def.cc.

◆ vkdev

Initial value:
{
(v_vkpushconstrange).size
VkPipelineLayoutCreateInfo ae2f_err_t ae2fVK_AnnSlp *const const ae2fVK_eAnnSlpPipeLayouts const uint32_t szrequired
v_mk m_U1 m_vkpushconstrange size
Definition Mlp.def.cc:257

Definition at line 8738 of file Slp.auto.def.cc.

◆ vkmemprops

ae2f_float_t* const ae2f_float_t* const ae2f_float_t* const const uint32_t const uint32_t 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 vkmemprops

Definition at line 9058 of file Slp.auto.def.cc.

◆ vkphydevmemprops

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements ae2f_opt const VkAllocationCallbacks unsigned char const unsigned char const VkMemoryPropertyFlagBits const VkPhysicalDeviceMemoryProperties vkphydevmemprops
Initial value:
{
assert(VK_MAX_MEMORY_TYPES <= memtypeidx_invalid_minus_one && "Invalid index does not do its thing.")
ae2f_err_t const unsigned char memtypeidx_invalid_minus_one

Definition at line 8706 of file Slp.auto.def.cc.

◆ vkpropflag_req

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode const VkDevice VkMemoryRequirements ae2f_opt const VkAllocationCallbacks unsigned char const unsigned char const VkMemoryPropertyFlagBits vkpropflag_req

Definition at line 8705 of file Slp.auto.def.cc.

◆ vksharemode

VkResult VkBuffer VkDeviceMemory ae2f_err_t VkBufferCreateInfo VkMemoryAllocateInfo const VkBufferUsageFlags const VkSharingMode vksharemode

Definition at line 8737 of file Slp.auto.def.cc.

◆ weight_opt

ae2f_float_t* const weight_opt

Definition at line 9044 of file Slp.auto.def.cc.