[Bug 94681] dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.23 takes 25 minutes to compile
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Wed Aug 17 23:39:08 UTC 2016
https://bugs.freedesktop.org/show_bug.cgi?id=94681
--- Comment #3 from Kenneth Graunke <kenneth at whitecape.org> ---
Oh, that is pretty absurd. Scheduling things seems pretty reasonable.
Maybe an easier trick would be to make add_barrier_deps() stop when it hits
something that's already a barrier.
If you have:
<bunch of instructions we'll call A>
barrier_1
<bunch of instructions we'll call B>
barrier_2
We need to make barrier_2 depend on everything in group B, and also barrier_1.
But since barrier_1 already depends on group A, we don't need to continue.
Something like:
while (!prev->is_head_sentinel()) {
add_dep(prev, n, 0);
prev = (schedule_node *)prev->prev;
if (is_scheduling_barrier(n->inst))
break;
}
Using is_scheduling_barrier approximates the right condition...we could also
perhaps just add a schedule_node::is_barrier field that we set when calling
add_barrier_deps(), and check here.
Seems easy enough and would likely solve this.
--
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20160817/ff3e16ab/attachment.html>
More information about the intel-3d-bugs
mailing list