[Nouveau] qemu -display sdl,gl=on also eats CPU

Andrew Randrianasulu randrianasulu at gmail.com
Mon Aug 17 05:35:59 UTC 2020


В сообщении от Monday 17 August 2020 08:09:37 вы написали:
> The DDX eating CPU isn't intrinsically bad. Did you check where perf
> says the CPU time is going? Could be doing copies/etc.

I think Xorg ended up eating ~13% CPU  after I quit most programs, but it 
was definitely better than much higher CPU usage before your patches.

I saw no additional debug messages in X log, so probably you covered 
my specific case well.

qemu was eating CPU in  nouveau_dri.so/libdrm_nouveau.so.2.0.0,
so I suspected something like 'too many error reports from vblanks' 
may happen there, too.

Unfortunately, my standard build command for mesa included --strip,
so opreport -c was not giving any additional details ...

I just recompiled DDX again with if 0'ed debug message, will see how 
it works alone, and then retry mesa build/qemu long-uptime testing ...

> 
> On Mon, Aug 17, 2020 at 12:52 AM Andrew Randrianasulu
> <randrianasulu at gmail.com> wrote:
> >
> > I was testing Ilia's patches for ddx, and while they definitely helped for Xorg itself,
> > qemu still eats a lot of CPU if launched like this
> >
> > qemu-system-x86_64 -cdrom ~/Downloads/ISO/slax-English-US-7.0.8-x86_64.iso -m 1G -display sdl,gl=on -enable-kvm
> >
> > and left for few hours.
> >
> > top - 07:38:01 up 18:05,  2 users,  load average: 2,00, 1,89, 1,83
> > Tasks: 224 total,   3 running, 221 sleeping,   0 stopped,   0 zombie
> > %Cpu(s): 40,6 us,  6,1 sy,  0,3 ni, 49,2 id,  0,8 wa,  0,0 hi,  2,9 si,  0,0 st
> > MiB Mem :  11875,3 total,   3535,7 free,   3339,3 used,   5000,3 buff/cache
> > MiB Swap:   1145,0 total,   1131,2 free,     13,8 used.   4874,7 avail Mem
> >
> >   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
> >  6215 guest     20   0 1455160 951768  45560 R  99,3   7,8 710:44.44 qemu-system-x86
> > 12655 guest     20   0 2459848   1,5g 126708 R  59,1  12,6 217:53.21 seamonkey
> >  1991 root      20   0  178112 109500  28840 S  20,9   0,9 187:20.05 Xorg
> >  2068 guest     20   0  104932  51660  30764 S   5,6   0,4  54:08.99 ktorrent
> >  6031 root      20   0       0      0      0 I   2,0   0,0   0:20.24 kworker/0:3-events
> >  3697 guest     20   0  382432  20308  13696 S   1,7   0,2  91:38.13 xmms
> >  2064 guest     20   0   55868  37048  23976 S   1,3   0,3   2:38.47 konsole
> >  2319 guest     20   0   40160  21248  18548 S   1,3   0,2  12:36.63 gkrellm
> >  5853 root      20   0       0      0      0 I   0,7   0,0   0:07.21 kworker/2:2-events
> >
> > opreport after  operf --pid 6215 said:
> >
> > opreport
> > Using /home/guest/botva/src/xf86-video-nouveau/oprofile_data/samples/ for samples directory.
> > CPU: AMD64 family15h, speed 3800 MHz (estimated)
> > Counted CPU_CLK_UNHALTED events (CPU Clocks not Halted) with a unit mask of 0x00 (No unit mask) count 100000
> > CPU_CLK_UNHALT...|
> >   samples|      %|
> > ------------------
> >    260163 100.000 qemu-system-x86_64
> >         CPU_CLK_UNHALT...|
> >           samples|      %|
> >         ------------------
> >            144120 55.3960 nouveau_dri.so
> >             87990 33.8211 libdrm_nouveau.so.2.0.0
> >             11783  4.5291 libpixman-1.so.0.38.0
> >              7884  3.0304 kallsyms
> >              5310  2.0410 libc-2.30.so
> >               689  0.2648 ld-2.30.so
> >               519  0.1995 nouveau
> >               501  0.1926 qemu-system-x86_64
> >               456  0.1753 ttm
> >               239  0.0919 kvm
> >               211  0.0811 kvm_amd
> >                81  0.0311 libpthread-2.30.so
> >                76  0.0292 drm
> >                49  0.0188 libSDL2-2.0.so.0.12.0
> >                43  0.0165 libxcb.so.1.1.0
> >                36  0.0138 libGL.so.1.2.0
> >                31  0.0119 libX11.so.6.3.0
> >                24  0.0092 snd_pcm
> >                23  0.0088 snd_hda_codec
> >                20  0.0077 libglib-2.0.so.0.5800.1
> >                11  0.0042 snd_timer
> >                 9  0.0035 libglapi.so.0.0.0
> >                 8  0.0031 libdrm.so.2.4.0
> >                 7  0.0027 snd_aloop
> >                 7  0.0027 snd_hda_intel
> >                 7  0.0027 libxshmfence.so.1.0.0
> >                 7  0.0027 libgcc_s.so.1
> >                 5  0.0019 [vdso] (tgid:6215 range:0xf7f9f000-0xf7f9ffff)
> >                 5  0.0019 snd_hda_core
> >                 4  0.0015 r8169
> >                 3  0.0012 libahci
> >                 2 7.7e-04 ohci_hcd
> >                 2 7.7e-04 libxcb-present.so.0.0.0
> >                 1 3.8e-04 libatomic.so.1.1.0
> >
> > so, may be similar fix needed for mesa, too?
> >
> > ow, I started it in ddx src directory :} need to cleanup there. But at least data is 100
> >
> > _______________________________________________
> > Nouveau mailing list
> > Nouveau at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/nouveau
> 




More information about the Nouveau mailing list