MCPcopy Create free account
hub / github.com/KomputeProject/kompute / recordBufferMemoryBarrier

Method recordBufferMemoryBarrier

src/Tensor.cpp:289–315  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

287}
288
289void
290Tensor::recordBufferMemoryBarrier(const vk::CommandBuffer& commandBuffer,
291 const vk::Buffer& buffer,
292 vk::AccessFlagBits srcAccessMask,
293 vk::AccessFlagBits dstAccessMask,
294 vk::PipelineStageFlagBits srcStageMask,
295 vk::PipelineStageFlagBits dstStageMask)
296{
297 KP_LOG_DEBUG("Kompute Tensor recording buffer memory barrier");
298
299 vk::DeviceSize bufferSize = this->memorySize();
300
301 vk::BufferMemoryBarrier bufferMemoryBarrier;
302 bufferMemoryBarrier.buffer = buffer;
303 bufferMemoryBarrier.size = bufferSize;
304 bufferMemoryBarrier.srcAccessMask = srcAccessMask;
305 bufferMemoryBarrier.dstAccessMask = dstAccessMask;
306 bufferMemoryBarrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
307 bufferMemoryBarrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
308
309 commandBuffer.pipelineBarrier(srcStageMask,
310 dstStageMask,
311 vk::DependencyFlags(),
312 nullptr,
313 bufferMemoryBarrier,
314 nullptr);
315}
316
317vk::DescriptorBufferInfo
318Tensor::constructDescriptorBufferInfo()

Calls 1

memorySizeMethod · 0.95

Tested by

no test coverage detected