MCPcopy Create free account
hub / github.com/cogentcore/core / CmdTransferStorageBuffRegsToGPU

Method CmdTransferStorageBuffRegsToGPU

vgpu/memory.go:522–534  ·  view source on GitHub ↗

CmdTransferStorageBuffRegsToGPU transfers memory from CPU to GPU for given regions by recording command to given storage buffer of given index.

(cmd vk.CommandBuffer, buff *MemBuff, buffIndex int, regs []MemReg)

Source from the content-addressed store, hash-verified

520// CmdTransferStorageBuffRegsToGPU transfers memory from CPU to GPU for given regions
521// by recording command to given storage buffer of given index.
522func (mm *Memory) CmdTransferStorageBuffRegsToGPU(cmd vk.CommandBuffer, buff *MemBuff, buffIndex int, regs []MemReg) {
523 if buff.Size == 0 || buff.DevMem == vk.NullDeviceMemory || len(regs) == 0 {
524 return
525 }
526 var rg []vk.BufferCopy
527 for _, mr := range regs {
528 if mr.BuffIndex != buffIndex {
529 continue
530 }
531 rg = append(rg, vk.BufferCopy{SrcOffset: vk.DeviceSize(mr.Offset), DstOffset: vk.DeviceSize(mr.Offset), Size: vk.DeviceSize(mr.Size)})
532 }
533 vk.CmdCopyBuffer(cmd, buff.Host, buff.Dev, uint32(len(rg)), rg)
534}
535
536// CmdTransferStorageRegsFromGPU transfers memory from GPU to CPU for given storage regions
537// by recording command to given command buffer.

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected