mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 07:08:04 +02:00
i965: Increase G4X default VS URB allocation to actually allow 32 threads.
This improves the performance of my GLSL demo by 30%. It also fixes the VS deadlock that ut2004 had, for reasons I can't explain. Bug #21330.
This commit is contained in:
parent
f359165a82
commit
c3499f6c66
1 changed files with 14 additions and 3 deletions
|
|
@ -143,7 +143,19 @@ static void recalculate_urb_fence( struct brw_context *brw )
|
|||
brw->urb.nr_clip_entries = limits[CLP].preferred_nr_entries;
|
||||
brw->urb.nr_sf_entries = limits[SF].preferred_nr_entries;
|
||||
brw->urb.nr_cs_entries = limits[CS].preferred_nr_entries;
|
||||
|
||||
|
||||
brw->urb.constrained = 0;
|
||||
|
||||
if (BRW_IS_G4X(brw)) {
|
||||
brw->urb.nr_vs_entries = 64;
|
||||
if (check_urb_layout(brw)) {
|
||||
goto done;
|
||||
} else {
|
||||
brw->urb.constrained = 1;
|
||||
brw->urb.nr_vs_entries = limits[VS].preferred_nr_entries;
|
||||
}
|
||||
}
|
||||
|
||||
if (!check_urb_layout(brw)) {
|
||||
brw->urb.nr_vs_entries = limits[VS].min_nr_entries;
|
||||
brw->urb.nr_gs_entries = limits[GS].min_nr_entries;
|
||||
|
|
@ -169,9 +181,8 @@ static void recalculate_urb_fence( struct brw_context *brw )
|
|||
if (INTEL_DEBUG & (DEBUG_URB|DEBUG_FALLBACKS))
|
||||
_mesa_printf("URB CONSTRAINED\n");
|
||||
}
|
||||
else
|
||||
brw->urb.constrained = 0;
|
||||
|
||||
done:
|
||||
if (INTEL_DEBUG & DEBUG_URB)
|
||||
_mesa_printf("URB fence: %d ..VS.. %d ..GS.. %d ..CLP.. %d ..SF.. %d ..CS.. %d\n",
|
||||
brw->urb.vs_start,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue