Skip to main content

Questions tagged [synchronization]

The tag has no usage guidance.

0 votes
0 answers
12 views

Vulkan vkCmdCopyBuffer with Semaphores

I am trying to copy data from one buffer to another. I have two VkSemaphores (each buffer has one) that should be checked before the copying process starts. And which should be signaled when the copy ...
Thomas's user avatar
  • 1,295
0 votes
1 answer
17 views

Vulkan synchronization stageBuffer

I am writing a program that uses a transfer queue and a compute queue. As the names suggest, the transfer queue loads data from the CPU to the GPU and from the GPU to the CPU and the compute queue ...
Thomas's user avatar
  • 1,295
1 vote
0 answers
497 views

Compute shader in DirextX: difference between four kinds of memory barriers

There are four kinds of memory barriers in DirectX. Their names and definitions are: DeviceMemoryBarrier: Blocks execution of all threads in a group until all ...
Fan's user avatar
  • 11
0 votes
1 answer
620 views

OpenGL compute shader workgroup synconization

I am calculating the Summed Area Table(SAT) of a texture with help of a compute shader in OpenGL. The texture which needs to be summed, has a dimension size of more than my GPU supports (...
Thomas's user avatar
  • 1,295
0 votes
0 answers
83 views

Why use buffer streaming instead of collecting data on CPU and uploading to GPU all at once

Say I have a couple of meshes that I want to reupload to GPU for each frame. I can do this by generating a single array from all the meshes on CPU and then uploading to GPU (ex with ...
Lenny White's user avatar
1 vote
1 answer
2k views

Compute shader workgroups execution and size [closed]

I want to clarify how are workgroups executed on various GPUs, thus I have several questions. I know that different GPU architectures work differently, but I expect an answer YES if there is single (...
Emil Kabirov's user avatar
3 votes
1 answer
1k views

Can D3D12 resource barriers be used to synchronize between the compute and 3D engine?

What is the best way to synchronize resource access between the (async) compute engine and the 3d engine (aka. direct engine) in D3D 12? I found this paragraph about multi-engine synchronization on ...
George's user avatar
  • 61
0 votes
1 answer
294 views

Only each third image in swapchain is being used, causing flickering

I've managed to write a "small" Vulkan program that outputs a solid color using compute shader directly to swapchain. However, it doesn't work properly. ImageMemoryBarriers I've setup don't ...
Karlovsky120's user avatar
0 votes
1 answer
453 views

how to update my scene graph?

I am updating my scene graph in response to user input and the network. What is the best way to do this? The updating threads are separate. Some approaches I am thinking about: double buffer. There ...
user1095108's user avatar
0 votes
1 answer
667 views

Do we really need a fence event?

One of the hardest things for me with the modern closer to the metal graphics APIs is understanding synchronization. I usually try to simplify things in order to understand the concept better. In ...
Nacho's user avatar
  • 110
2 votes
1 answer
661 views

Directly use Transform Feedback primitive count as instance count for drawing

When using Transform Feedback to capture the vertices generated by the primtive generation stage, we can use glDrawTransformFeedback to directly draw the generated ...
Christian Rau's user avatar
4 votes
2 answers
3k views

How does ID3D12Resource::Map work?

How does Map() work? I would guess that it allocates memory to fit the resource size (or a range of it), but when are the bytes sent to the GPU?
Derag's user avatar
  • 596
4 votes
1 answer
3k views

Why do I need memory barrier when doing atomic operations?

I am reading the OpenGL SuperBible 7th edition which covers atomic operations on memory specifically within shader storage blocks. It says (about atomic operations): If two invocations access the ...
Startec's user avatar
  • 781