From 43a7030f6e0b798702df4528f141046391a45f89 Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Sun, 22 Aug 2021 17:46:28 +0200 Subject: [PATCH] gpu/internal/metal: use optimal CPU cache mode for staging buffers Signed-off-by: Elias Naur --- gpu/internal/metal/metal_darwin.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gpu/internal/metal/metal_darwin.go b/gpu/internal/metal/metal_darwin.go index 808031fb..ba5f1b4c 100644 --- a/gpu/internal/metal/metal_darwin.go +++ b/gpu/internal/metal/metal_darwin.go @@ -906,7 +906,7 @@ func (b *Backend) stagingBuffer(size int) (C.CFTypeRef, int) { C.CFRelease(b.stagingBuf) } cap := 2 * (b.stagingOff + size) - b.stagingBuf = C.newBuffer(b.dev, C.NSUInteger(cap), C.MTLResourceStorageModeShared) + b.stagingBuf = C.newBuffer(b.dev, C.NSUInteger(cap), C.MTLResourceStorageModeShared|C.MTLResourceCPUCacheModeWriteCombined) if b.stagingBuf == 0 { panic(fmt.Errorf("metal: failed to allocate %d bytes of staging buffer", cap)) }