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

Method CmdTransferStorageRegsToGPU

vgpu/memory.go:500–518  ·  view source on GitHub ↗

CmdTransferStorageRegsToGPU transfers memory from CPU to GPU for given storage regions by recording command to given command buffer.

(cmd vk.CommandBuffer, regs []MemReg)

Source from the content-addressed store, hash-verified

498// CmdTransferStorageRegsToGPU transfers memory from CPU to GPU for given storage regions
499// by recording command to given command buffer.
500func (mm *Memory) CmdTransferStorageRegsToGPU(cmd vk.CommandBuffer, regs []MemReg) {
501 if len(regs) == 0 {
502 return
503 }
504 sort.Slice(regs, func(i, j int) bool {
505 return regs[i].BuffIndex < regs[j].BuffIndex
506 })
507 buffIndex := regs[0].BuffIndex
508 buff := mm.StorageBuffs[buffIndex]
509 mm.CmdTransferStorageBuffRegsToGPU(cmd, buff, buffIndex, regs)
510 for i := 1; i < len(regs); i++ {
511 if regs[i].BuffIndex == buffIndex {
512 continue
513 }
514 buffIndex = regs[i].BuffIndex
515 buff = mm.StorageBuffs[buffIndex]
516 mm.CmdTransferStorageBuffRegsToGPU(cmd, buff, buffIndex, regs)
517 }
518}
519
520// CmdTransferStorageBuffRegsToGPU transfers memory from CPU to GPU for given regions
521// by recording command to given storage buffer of given index.

Callers 2

ComputeCopyToGPUMethod · 0.80

Calls 2

SliceMethod · 0.80

Tested by

no test coverage detected