Vulkan: Optimize Attribute Change Perf (4/5)
This patch series optimizes programs that use the pattern:
for (;;) {
glVertexAttribPointer(...)
glDraw(...)
}
Change 4: Inline ValidateProgramDrawStates.
A hotspot in most draw calls that change state.
In total the patch series reduces test iteration time by 25%. This
change reduces the listed "null" benchmark time from 295 -> 286 ns.
Test: DrawCallPerfBenchmark.Run/vulkan_null_attrib_change
Bug: angleproject:5045
Bug: b/168493024
Change-Id: I80959c9d06030709d7f4eba696e43614c33d5a8f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2409176
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org>
Showing
Please
register
or
sign in
to comment