<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEEDINFO "
title="NEEDINFO - [PERF] Updating ubo offset via vkCmdBindDescriptorSets is causing flush that is taking 50% of rendering time"
href="https://bugs.freedesktop.org/show_bug.cgi?id=105695#c3">Comment # 3</a>
on <a class="bz_bug_link
bz_status_NEEDINFO "
title="NEEDINFO - [PERF] Updating ubo offset via vkCmdBindDescriptorSets is causing flush that is taking 50% of rendering time"
href="https://bugs.freedesktop.org/show_bug.cgi?id=105695">bug 105695</a>
from <span class="vcard"><a class="email" href="mailto:jason@jlekstrand.net" title="Jason Ekstrand <jason@jlekstrand.net>"> <span class="fn">Jason Ekstrand</span></a>
</span></b>
<pre>(In reply to Vyacheslav from <a href="show_bug.cgi?id=105695#c2">comment #2</a>)
<span class="quote">> You are right, I get better perf without asserts. It is still lagging behind
> opengl. I also checked proprietary nvidia driver and I also get similar
> results with vulkan slightly lagging behind.</span >
How big is the discrepancy? I'm a bit surprised if there is much but I could
see it happening. If you're CPU bound, what is the CPU overhead of your app
(not the driver) in the Vulkan vs. GL configuration?
<span class="quote">> I think the issue can be closed
> but I'm still left with impression that opengl drivers are better at
> handling memory management in this case (passing 50000 matrices per frame
> via glUniformMatrix). Probably because opengl drivers are more mature and
> better at tracking dirty state.</span >
More to the point, I think OpenGL drivers are highly optimized for repeatedly
changing a uniform and drawing as that was the best practice 5-10 years ago.
Modern applications tend to try very hard to reduce the number of draw calls
and state changes. Even if the CPU overhead of changing the matrix 50k times
is low, it's likely to cause quite a bit of GPU overhead having all those state
changes and the stalling that likely comes with them.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>