[Nouveau] qemu -display sdl,gl=on also eats CPU
Andrew Randrianasulu
randrianasulu at gmail.com
Tue Aug 18 07:51:54 UTC 2020
Update, after few hours of qemu uptime
I can see this oreport:
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
samples % linenr info image name symbol name
-------------------------------------------------------------------------------
385793 53.1157 nv50_context.c:409 nouveau_dri.so nv50_bufctx_fence
385793 100.000 nv50_context.c:409 nouveau_dri.so nv50_bufctx_fence [self]
-------------------------------------------------------------------------------
151037 20.7947 pushbuf.c:482 libdrm_nouveau.so.2.0.0 pushbuf_validate
151037 100.000 pushbuf.c:482 libdrm_nouveau.so.2.0.0 pushbuf_validate [self]
-------------------------------------------------------------------------------
83835 11.5423 pushbuf.c:149 libdrm_nouveau.so.2.0.0 pushbuf_kref
83835 100.000 pushbuf.c:149 libdrm_nouveau.so.2.0.0 pushbuf_kref [self]
-------------------------------------------------------------------------------
44660 6.1488 (no location information) libpixman-1.so.0.38.0 /usr/X11R7/lib/libpixman-1.so.0.38.0
44660 100.000 (no location information) libpixman-1.so.0.38.0 /usr/X11R7/lib/libpixman-1.so.0.38.0 [self]
-------------------------------------------------------------------------------
16662 2.2940 (no location information) libc-2.30.so memcpy
16662 100.000 (no location information) libc-2.30.so memcpy [self]
-------------------------------------------------------------------------------
8587 1.1823 (no location information) kallsyms dma_direct_alloc_pages
8587 100.000 (no location information) kallsyms dma_direct_alloc_pages [self]
-------------------------------------------------------------------------------
2276 0.3134 (no location information) kallsyms ioread32
2276 100.000 (no location information) kallsyms ioread32 [self]
-------------------------------------------------------------------------------
2033 0.2799 (no location information) qemu-system-x86_64 /usr/bin/qemu-system-x86_64
2033 100.000 (no location information) qemu-system-x86_64 /usr/bin/qemu-system-x86_64 [self]
-------------------------------------------------------------------------------
1925 0.2650 (no location information) libdrm_nouveau.so.2.0.0 __x86.get_pc_thunk.si
1925 100.000 (no location information) libdrm_nouveau.so.2.0.0 __x86.get_pc_thunk.si [self]
-------------------------------------------------------------------------------
1765 0.2430 (no location information) nouveau /nouveau
1765 100.000 (no location information) nouveau /nouveau [self]
-------------------------------------------------------------------------------
1453 0.2000 (no location information) ttm /ttm
1453 100.000 (no location information) ttm /ttm [self]
-------------------------------------------------------------------------------
1286 0.1771 (no location information) ld-2.30.so _dl_update_slotinfo
1286 100.000 (no location information) ld-2.30.so _dl_update_slotinfo [self]
-------------------------------------------------------------------------------
1038 0.1429 (no location information) kallsyms atomic_try_cmpxchg
1038 100.000 (no location information) kallsyms atomic_try_cmpxchg [self]
-------------------------------------------------------------------------------
990 0.1363 (no location information) kallsyms find_next_iomem_res
990 100.000 (no location information) kallsyms find_next_iomem_res [self]
-------------------------------------------------------------------------------
837 0.1152 (no location information) libc-2.30.so cfree at GLIBC_2.0
837 100.000 (no location information) libc-2.30.so cfree at GLIBC_2.0 [self]
-------------------------------------------------------------------------------
741 0.1020 (no location information) libc-2.30.so _int_free
741 100.000 (no location information) libc-2.30.so _int_free [self]
-------------------------------------------------------------------------------
590 0.0812 (no location information) libc-2.30.so malloc
590 100.000 (no location information) libc-2.30.so malloc [self]
-------------------------------------------------------------------------------
while initially it was:
opreport -c -g --session-dir=./1/oprofile_data/ | less
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
samples % linenr info image name symbol name
-------------------------------------------------------------------------------
70223 33.8331 (no location information) libc-2.30.so memcpy
70223 100.000 (no location information) libc-2.30.so memcpy [self]
-------------------------------------------------------------------------------
36385 17.5301 (no location information) libpixman-1.so.0.38.0 /usr/X11R7/lib/libpixman-1.so.0.38.0
36385 100.000 (no location information) libpixman-1.so.0.38.0 /usr/X11R7/lib/libpixman-1.so.0.38.0 [self]
-------------------------------------------------------------------------------
35130 16.9255 (no location information) kallsyms dma_direct_alloc_pages
35130 100.000 (no location information) kallsyms dma_direct_alloc_pages [self]
-------------------------------------------------------------------------------
3885 1.8718 (no location information) ttm /ttm
3885 100.000 (no location information) ttm /ttm [self]
-------------------------------------------------------------------------------
3873 1.8660 (no location information) kallsyms find_next_iomem_res
3873 100.000 (no location information) kallsyms find_next_iomem_res [self]
-------------------------------------------------------------------------------
3429 1.6521 (no location information) qemu-system-x86_64 /usr/bin/qemu-system-x86_64
3429 100.000 (no location information) qemu-system-x86_64 /usr/bin/qemu-system-x86_64 [self]
-------------------------------------------------------------------------------
2883 1.3890 (no location information) nouveau /nouveau
2883 100.000 (no location information) nouveau /nouveau [self]
-------------------------------------------------------------------------------
2119 1.0209 (no location information) kallsyms atomic_try_cmpxchg
2119 100.000 (no location information) kallsyms atomic_try_cmpxchg [self]
-------------------------------------------------------------------------------
1812 0.8730 (no location information) kvm_amd /kvm_amd
1812 100.000 (no location information) kvm_amd /kvm_amd [self]
-------------------------------------------------------------------------------
1759 0.8475 nv50_context.c:409 nouveau_dri.so nv50_bufctx_fence
1759 100.000 nv50_context.c:409 nouveau_dri.so nv50_bufctx_fence [self]
-------------------------------------------------------------------------------
1681 0.8099 (no location information) kvm /kvm
1681 100.000 (no location information) kvm /kvm [self]
-------------------------------------------------------------------------------
1668 0.8036 (no location information) kallsyms __x86_indirect_thunk_rax
1668 100.000 (no location information) kallsyms __x86_indirect_thunk_rax [self]
-------------------------------------------------------------------------------
1564 0.7535 (no location information) kallsyms page_fault
1564 100.000 (no location information) kallsyms page_fault [self]
-------------------------------------------------------------------------------
1314 0.6331 image.c:121 nouveau_dri.so _mesa_image_offset
1314 100.000 image.c:121 nouveau_dri.so _mesa_image_offset [self]
-------------------------------------------------------------------------------
1249 0.6018 pushbuf.c:482 libdrm_nouveau.so.2.0.0 pushbuf_validate
1249 100.000 pushbuf.c:482 libdrm_nouveau.so.2.0.0 pushbuf_validate [self]
-------------------------------------------------------------------------------
1123 0.5411 (no location information) kallsyms unmap_page_range
1123 100.000 (no location information) kallsyms unmap_page_range [self]
-------------------------------------------------------------------------------
1088 0.5242 (no location information) kallsyms atomic_sub_return.constprop.3
1088 100.000 (no location information) kallsyms atomic_sub_return.constprop.3 [self]
-------------------------------------------------------------------------------
pixman/memcpy dominating initial profile probably OK, because guest uses vesa driver and KDE4 with 1920x1200
resolution, scaled down to my monitor resolution 1440x900 :}
I'll attach compressed oprofile directories with data (from oprofile 1.2.0)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 1-qemu-samples_fresh.tar.gz
Type: application/x-tgz
Size: 92765 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20200818/c2378156/attachment-0003.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 2-qemu-samples_mid.tar.gz
Type: application/x-tgz
Size: 95381 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20200818/c2378156/attachment-0004.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 3-qemu-samples_last.tar.gz
Type: application/x-tgz
Size: 69855 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20200818/c2378156/attachment-0005.bin>
More information about the Nouveau
mailing list