Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Downstream 1.3.286 #27

Merged
merged 443 commits into from
Jul 4, 2024
Merged

Downstream 1.3.286 #27

merged 443 commits into from
Jul 4, 2024

Conversation

aqnuep
Copy link
Contributor

@aqnuep aqnuep commented Jul 4, 2024

No description provided.

spencer-lunarg and others added 30 commits March 25, 2024 23:09
Move to one error buffer per command buffer.
Code modifications allow to properly log multiple errors
in instrumentation/diagnostic shader dispatches.
This can lead to a swarm of errors if say all fragments
emit errors. To mitigate that, a `kMaxErrorsPerCmd` constant
has been introduced. The error buffer itself can hold a
maximum of `kErrorRecordCounts`.
Having one error buffer per command buffer makes
maintaining the mapping between an error record
and its corresponding resources
(including its origin) a problem. Currently it is
solved by storing an resources index in an error record.
Instrumentation does not allow the use of push constants
to transfer the index to the GPU, a solution that
would have been efficient and easier to maintain.
Instead, a index buffer is created at device creation
time, holding `gpuav::cst::indices_count`indices.
The correct index is transmitted to instrumentation/
diagnostic shader dispatches using dynamic offsets
in calls to `vkCmdBindDescriptorSets`.

Misc:
- All descriptor sets/binding indices have
now named constants, to make the mapping between
CPU code and shaders easier to maintain
- Add to change expected errors count in
some tests that are now emitting
the proper amount of errors.
Also add same test but with one command buffer where invalid
commands are registered
State was not restored for shader objects.
Also in the test, the render are was one pixel, so only one error
would be emitted in the fragment shaders. Now render area spans whole
target image.
artem-lunarg and others added 26 commits May 9, 2024 11:30
Unsignal is called immediately after vvl::TlsGuard<QueueXXXCmdState>
is constructed, and in that case nothing is added to signaled_ yet.
Assert checks that condition.

Also Unsignal is always called on the child object (not on the
parent signaled_semaphores_). That's why prev_ != null. Assert this too.
Unsignal is only called on the child object (not on the
parent signaled_semaphores_) => prev_ != null. Added assert.
Instead, we also allow MapMemoryInfo::size to be specified
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@aqnuep aqnuep merged commit 301c522 into sc_main Jul 4, 2024
22 of 23 checks passed
@aqnuep aqnuep deleted the downstream-1.3.286 branch July 4, 2024 10:03
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.