Post

Replies

Boosts

Views

Activity

Comment on MTLSharedEvent scheduled block called before command buffer scheduling and not in-flight
Monotonicity did resolve the issue in the end. Are you sure that you're waiting for the appropriate value with the command buffer? Are you sure that you're using the same event for each iteration? Also, the synchronization in the demo project that you linked differs from the synchronization that is used in this example. The shared event synchronizes work between the CPU and GPU during the execution of a command buffer, whereas the demo project describes how to limit the CPU from going to fast and accidentally overwriting buffers the GPU is using. They're related in that they both synchronize the CPU and GPU. but at different times. That is, a shared event is for one set of resources that the CPU and GPU use within the same execution context (i.e. in the same or across command buffers) whereas the semaphore method is meant for a set of resources
Jan ’22