All of lore.kernel.org
 help / color / mirror / Atom feed
* [Bug 96355] New: Performance: extra&costly SSBO validation even when SSBO aren't used
@ 2016-06-03  7:53 bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
       [not found] ` <bug-96355-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
  0 siblings, 1 reply; 14+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2016-06-03  7:53 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 3051 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=96355

            Bug ID: 96355
           Summary: Performance: extra&costly SSBO validation even when
                    SSBO aren't used
           Product: Mesa
           Version: git
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/DRI/nouveau
          Assignee: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
          Reporter: gregory.hainaut-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
        QA Contact: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org

Hello,

I'm currently trying to profile my application (PCSX2) with Mesa. I don't know
if my GPU (GTX760) is properly reclocked but my app is often CPU limited. It
could just be the IO operation that are very slow.

Anyway, Perf-Event shows that nvc0_validate_buffers is (too) often called.
+    8.78%     7.98%  pcsx2_GSReplayL  nouveau_dri.so  nvc0_validate_buffers

My understanding of the code is that every time we switch a shader program, a
full SSBO bind/validation is called. nvc0_set_shader_buffers will dirty buffer
state (NVC0_NEW_3D_BUFFERS). The trick is that my application doesn't use SSBO
(only UBO). Is it expected to call SSBO validation code when the shader program
doesn't use them? If not, a validation shortcut will be nice.

If it can help, here the backtrace from nvc0_set_shader_buffers 

#0  nvc0_set_shader_buffers (pipe=0x87c51e0, shader=0, start=16, nr=16,
buffers=0x0) at nvc0/nvc0_state.c:1331
#1  0xf464acc4 in st_bind_ssbos (shader=0x8b106bc, shader_type=0, st=0x877ca38,
st=0x877ca38) at state_tracker/st_atom_storagebuf.c:86
#2  0xf464ad0d in bind_vs_ssbos (st=0x877ca38) at
state_tracker/st_atom_storagebuf.c:101
#3  0xf4647411 in st_validate_state (st=0x877ca38, pipeline=ST_PIPELINE_RENDER)
at state_tracker/st_atom.c:289
#4  0xf46638ef in st_draw_vbo (ctx=0x8801f60, prims=0xffffa990, nr_prims=1,
ib=0xffffa980, index_bounds_valid=0 '\000', min_index=4294967295,
max_index=4294967295, tfb_vertcount=0x0, 
    stream=0, indirect=0x0) at state_tracker/st_draw.c:176
#5  0xf46270f9 in vbo_validated_drawrangeelements (ctx=ctx@entry=0x8801f60,
mode=mode@entry=4, index_bounds_valid=0 '\000', start=4294967295,
end=4294967295, count=6, type=5125, 
    indices=0x25258, basevertex=19047, numInstances=1, baseInstance=0) at
vbo/vbo_exec_array.c:849
#6  0xf46274bc in vbo_exec_DrawElementsBaseVertex (mode=4, count=6, type=5125,
indices=0x25258, basevertex=19047) at vbo/vbo_exec_array.c:1007
#7  0xf6ddf422 in shared_dispatch_stub_702 (mode=4, count=6, type=5125,
indices=0x25258, basevertex=19047) at shared-glapi/glapi_mapi_tmp.h:21235
#8  0xf6362e0a in Draw (this=<optimized out>, this=<optimized out>,
basevertex=<optimized out>, mode=<optimized out>)

Feel free to ask trace/debug info.

Best regards

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 4396 bytes --]

[-- Attachment #2: Type: text/plain, Size: 154 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2016-06-06  9:17 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-03  7:53 [Bug 96355] New: Performance: extra&costly SSBO validation even when SSBO aren't used bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
     [not found] ` <bug-96355-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
2016-06-03  8:01   ` [Bug 96355] " bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-03  8:17   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-03 15:15   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-03 15:32   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-03 16:16   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-04 11:32   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-05  3:53   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-05 10:18   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-05 11:09   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-05 14:42   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-05 15:41   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-06  8:11   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2016-06-06  9:17   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.