Hi;

On 11/23/18 9:06 AM, yanhua wrote:
Hi, Tapani:
      Recently I come into a problem. I have a opengl program, if the program run, it can take up almost one core, and the Xorg takes almost one core too.       I found this program continuously recvmsg from the Xorg. I'm sure the CPU is takeing by too much sendmsg/recvmsg.

There might be a lot of these calls but typically it is the app itself that hogs the CPU. Does it use many threads, does it use physics engine like bullet?

Also is this with vblank_mode=0 or with throttling, does it achieve 60fps?


Following is the backtrace of this program when it call recvmsg:


#0  recvmsg () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fb88abffdd7 in _xcb_in_read (c=c@entry=0x277e990) at ../../src/xcb_in.c:982 #2  0x00007fb88abfded1 in _xcb_conn_wait (c=c@entry=0x277e990, cond=cond@entry=0x7fb8667fa5c0, vector=vector@entry=0x0,
     count=count@entry=0x0) at ../../src/xcb_conn.c:495
#3  0x00007fb88abff617 in wait_for_reply (c=c@entry=0x277e990, request=2575173, e=e@entry=0x7fb8667fa690)
     at ../../src/xcb_in.c:516
#4  0x00007fb88abff721 in xcb_wait_for_reply (c=0x277e990, request=2575173, e=0x7fb8667fa690) at ../../src/xcb_in.c:546 #5  0x00007fb88dd64ae7 in _XReply () from /usr/lib/x86_64-linux-gnu/libX11.so.6 #6  0x00007fb88dd6052d in XSync () from /usr/lib/x86_64-linux-gnu/libX11.so.6 #7  0x00007fb88748c1de in dri2XcbSwapBuffers (pdraw=0x7fb849a058c0, remainder=<optimized out>, divisor=0, target_msc=0,
     dpy=0x277d6d0) at dri2_glx.c:815

I strace the program's syscall,
the data is almost zeros.
recvmsg(20, {msg_name(0)=NULL, msg_iov(1)=[{"g\0\325R\v\0@\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 2048

Could you tell me what's the possible cause  of this problem.

---------------------------
Yanhua
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to