Questions tagged [synchronization]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
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
3 votes
1 answer
933 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
2 votes
1 answer
641 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
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
1 vote
0 answers
409 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
643 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
0 votes
1 answer
429 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
515 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,198
0 votes
0 answers
49 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
0 votes
1 answer
281 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