Skip to content

sync: Stop using SyncOpBase::Validate for pipeline barriers#12703

Merged
artem-lunarg merged 1 commit into
KhronosGroup:mainfrom
artem-lunarg:artem-sync-devirtualize-syncop-validate
Jul 14, 2026
Merged

sync: Stop using SyncOpBase::Validate for pipeline barriers#12703
artem-lunarg merged 1 commit into
KhronosGroup:mainfrom
artem-lunarg:artem-sync-devirtualize-syncop-validate

Conversation

@artem-lunarg

@artem-lunarg artem-lunarg commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

This final goal here is to do something (probably disappear in a smart way) withReplayState in sync_op.h (because it's ugly and confusing). To better understand this area I started with the adjacent SyncOpBase.

SyncOpBase::Validate was virtual but not really used in a polymorphic way. Instead a SyncOpBase-derived object was created whenever something needed to be validated at record time. This PR starts with pipeline barriers. Instead of creating SyncOp to call Validate from it, the new approach implements validation in ValidatePipelineBarrier helper shared between sync1/sync2. Initialization of BarrierSet is also simplified - in most cases it's enough to use sync1 or sync2 constructor.

@ci-tester-lunarg

Copy link
Copy Markdown
Collaborator

CI Vulkan-ValidationLayers build queued with queue ID 38903.

@ci-tester-lunarg

Copy link
Copy Markdown
Collaborator

CI Vulkan-ValidationLayers build # 23913 running.

@artem-lunarg artem-lunarg marked this pull request as ready for review July 13, 2026 22:26
@artem-lunarg artem-lunarg requested a review from a team as a code owner July 13, 2026 22:26
@ci-tester-lunarg

Copy link
Copy Markdown
Collaborator

CI Vulkan-ValidationLayers build # 23913 failed.

@ci-tester-lunarg

Copy link
Copy Markdown
Collaborator

CI Vulkan-ValidationLayers build queued with queue ID 39417.

@ci-tester-lunarg

Copy link
Copy Markdown
Collaborator

CI Vulkan-ValidationLayers build # 23920 running.

@artem-lunarg

Copy link
Copy Markdown
Contributor Author

Unrelated NegativeShaderObject.TessellationControlNextStage crash

@artem-lunarg artem-lunarg merged commit ace7d79 into KhronosGroup:main Jul 14, 2026
20 of 21 checks passed
@artem-lunarg artem-lunarg deleted the artem-sync-devirtualize-syncop-validate branch July 14, 2026 09:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants