Nebula
Loading...
Searching...
No Matches
vkmemory.cc File Reference
#include "vkmemory.h"
#include "vkgraphicsdevice.h"

Namespaces

namespace  CoreGraphics
 Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.
 
namespace  Vulkan
 Vulkan implementation of GPU acceleration structure.
 

Functions

 CoreGraphics::N_DECLARE_COUNTER (N_DEVICE_ONLY_GPU_MEMORY, Device Only GPU Memory)
 
 CoreGraphics::N_DECLARE_COUNTER (N_HOST_ONLY_GPU_MEMORY, Host Only GPU Memory)
 
 CoreGraphics::N_DECLARE_COUNTER (N_DEVICE_TO_HOST_GPU_MEMORY, Device To Host GPU Memory)
 
 CoreGraphics::N_DECLARE_COUNTER (N_HOST_TO_DEVICE_GPU_MEMORY, Host To Device GPU Memory)
 
void CoreGraphics::SetupMemoryPools (DeviceSize deviceLocalMemory, DeviceSize hostLocalMemory, DeviceSize hostToDeviceMemory, DeviceSize deviceToHostMemory)
 setup memory pools
 
void CoreGraphics::DiscardMemoryPools (VkDevice dev)
 discard memory pools
 
void CoreGraphics::FreeMemory (const CoreGraphics::Alloc &alloc)
 free memory
 
void * CoreGraphics::GetMappedMemory (const CoreGraphics::Alloc &alloc)
 get mapped memory pointer
 
CoreGraphics::Alloc Vulkan::AllocateMemory (const VkDevice dev, const VkImage &img, CoreGraphics::MemoryPoolType type)
 allocate memory for an image
 
CoreGraphics::Alloc Vulkan::AllocateMemory (const VkDevice dev, const VkBuffer &buf, CoreGraphics::MemoryPoolType type, uint alignment=1)
 allocate memory for a buffer
 
CoreGraphics::Alloc Vulkan::AllocateMemory (const VkDevice dev, VkMemoryRequirements reqs, VkDeviceSize allocSize)
 allocate memory for sparse memory
 
void Vulkan::Flush (const VkDevice dev, const CoreGraphics::Alloc &alloc, IndexT offset, SizeT size)
 flush a mapped memory region
 
void Vulkan::Invalidate (const VkDevice dev, const CoreGraphics::Alloc &alloc, IndexT offset, SizeT size)
 invalidate a mapped memory region
 
VkResult Vulkan::GetMemoryType (uint32_t bits, VkMemoryPropertyFlags flags, uint32_t &index)
 get vulkan memory type based on resource requirements and wanted memory properties