[MPlayer-users] ssa/ass rendering uses lots of cpu with -vo gl
Vladimir Mosgalin
mosgalin at VM10124.spb.edu
Sun May 1 22:30:09 CEST 2011
Hi Reimar Döffinger!
On 2011.05.01 at 22:07:04 +0200, Reimar Döffinger wrote next:
> >>>> 14.47% mplayer libfreetype.so.6.6.0 [.] 0xfae6
> >>>> 14.40% mplayer r300_dri.so [.] 0x416be
> >>>> 11.17% mplayer [radeon] [k] radeon_dvi_detect
> >>
> >> Forgot to say: you probably need r300_dri.so and radeon kernel module
> >> debug symbols to get more detail.
> >> At least I very much hope that the radeon_dvi_detect isn't correct,
> >> because otherwise it would mean that the kernel module spends more
> >> time probing the DVI port than MPlayer uses for all of decoding
> >> and (de)noising together.
> >
> > Well okay. Here are same reports with installed debuginfo to kernel,
> > mesa, libdrm, freetype and glibc:
> > I remade test to make sure window in window test is as wide as full
> > screen; it was *almost* as wide in last test, like 80%, now should be
> > more correct. But yes, freetype consumes insane amount of CPU in
> > fullscreen, compared to almost none for the window of same size.
>
> Hm, could you please run with -aspect set to your monitor's aspect so
> that fullscreen has no black borders?
> It looks like the driver spends a lot of time allocating memory, which can
> happen once the subtitles get too large and that bit of extra space might
> make the difference. I guess nobody optimised allocating memory for textures.
o.O there seem to be no problems if -aspect 4/3 is added.
perf reports in fullscreen seem to be close to window mode now.
So, hm, I must add expand filter to everything to fix this?.. or there
is some other solution?
$ perf report --showcpuutilization -k /usr/lib/debug/lib/modules/2.6.38.2-11.fc15.x86_64/vmlinux -m -i perf-aspect-fs.data --sort comm,dso
# Events: 1K cycles
#
# Overhead sys us Command Shared Object
# ........ ....... ........................
#
57.57% 0.00% 0.05% mplayer mplayer
13.67% 3.16% 0.00% mplayer [kernel.kallsyms]
12.04% 0.00% 12.04% mplayer r300_dri.so
5.69% 0.00% 5.69% mplayer libc-2.13.so
2.86% 2.86% 0.00% mplayer [radeon]
2.39% 0.00% 2.39% mplayer ld-2.13.so
1.08% 0.00% 1.08% mplayer libfreetype.so.6.6.0
0.83% 0.00% 0.83% mplayer libdrm_radeon.so.1.0.0
$ perf report --showcpuutilization -k /usr/lib/debug/lib/modules/2.6.38.2-11.fc15.x86_64/vmlinux -m -i perf-aspect-fs.data
# Events: 1K cycles
#
# Overhead sys us Command Shared Object Symbol
# ........ ....... ........................ ............................................
#
27.73% 0.00% 27.73% mplayer mplayer [.] deNoise
3.67% 0.00% 3.67% mplayer mplayer [.] ff_h264_decode_mb_cabac
3.09% 0.00% 3.09% mplayer mplayer [.] decode_significance_x86
2.49% 0.00% 2.49% mplayer mplayer [.] ff_put_h264_chroma_mc4_ssse3
2.38% 0.00% 2.38% mplayer r300_dri.so [.] do_memcpy
2.31% 0.00% 2.31% mplayer mplayer [.] lineNoiseAvg_MMX
2.18% 0.00% 2.18% mplayer mplayer [.] get_cabac_noinline
2.05% 0.00% 2.05% mplayer mplayer [.] decode_cabac_residual_nondc_internal
1.99% 0.00% 1.99% mplayer libc-2.13.so [.] __memcpy_ssse3
1.82% 0.00% 1.82% mplayer mplayer [.] fill_decode_caches
1.51% 0.00% 1.51% mplayer libc-2.13.so [.] __strcmp_sse42
1.30% 1.30% 0.00% mplayer [kernel.kallsyms] [k] update_cfs_shares
1.25% 0.00% 1.25% mplayer ld-2.13.so [.] do_lookup_x
1.13% 1.13% 0.00% mplayer [kernel.kallsyms] [k] put_page_testzero
1.12% 0.00% 1.12% mplayer ld-2.13.so [.] _dl_load_cache_lookup
1.10% 0.09% 0.00% mplayer [kernel.kallsyms] [k] __wake_up_bit
1.06% 0.00% 1.06% mplayer mplayer [.] fast_memcpy
1.04% 1.04% 0.00% mplayer [kernel.kallsyms] [k] atomic_inc
0.91% 0.00% 0.91% mplayer mplayer [.] put_h264_qpel8or16_v_lowpass_sse2
0.84% 0.00% 0.84% mplayer mplayer [.] decode_cabac_mb_mvd
0.79% 0.00% 0.79% mplayer r300_dri.so [.] r300_emit_draw_arrays_immediate
0.61% 0.61% 0.00% mplayer [kernel.kallsyms] [k] copy_user_generic_string
0.55% 0.00% 0.55% mplayer mplayer [.] put_h264_qpel16_h_lowpass_l2_ssse3
0.54% 0.54% 0.00% mplayer [xhci_hcd] [k] xhci_irq
0.51% 0.00% 0.51% mplayer mplayer [.] hl_decode_mb_simple
0.49% 0.00% 0.49% mplayer libc-2.13.so [.] _int_malloc
0.46% 0.46% 0.00% mplayer [radeon] [k] r100_mm_rreg
0.43% 0.00% 0.43% mplayer libfontconfig.so.1.4.4 [.] 0x5a20
0.43% 0.00% 0.43% mplayer r300_dri.so [.] _mesa_update_texture
0.42% 0.42% 0.00% mplayer [radeon] [k] radeon_cs_parser_relocs
0.39% 0.10% 0.00% mplayer [kernel.kallsyms] [k] __list_del_entry
0.38% 0.00% 0.38% mplayer mplayer [.] put_h264_qpel8or16_hv_lowpass_ssse3.clone.35
0.37% 0.00% 0.37% mplayer r300_dri.so [.] vbo_save_playback_vertex_list
0.37% 0.00% 0.37% mplayer libc-2.13.so [.] __malloc
0.36% 0.00% 0.36% mplayer r300_dri.so [.] r300_update_derived_state
0.36% 0.00% 0.36% mplayer mplayer [.] await_references
0.36% 0.00% 0.36% mplayer mplayer [.] prefetch_mmx2
0.36% 0.00% 0.36% mplayer r300_dri.so [.] vbo_exec_fixup_vertex.clone.2
0.35% 0.00% 0.35% mplayer mplayer [.] ff_put_h264_chroma_mc8_ssse3_rnd
0.35% 0.35% 0.00% mplayer [kernel.kallsyms] [k] do_raw_spin_lock
0.33% 0.00% 0.33% mplayer r300_dri.so [.] memcpy_texture.clone.2
0.33% 0.00% 0.33% mplayer mplayer [.] ff_h264_pred_direct_motion
0.30% 0.00% 0.30% mplayer r300_dri.so [.] update_samplers
0.29% 0.29% 0.00% mplayer [radeon] [k] r100_cs_parse_packet0
0.29% 0.29% 0.00% mplayer [kernel.kallsyms] [k] kref_get
0.29% 0.00% 0.29% mplayer libc-2.13.so [.] __memset_sse2
0.28% 0.28% 0.00% mplayer [radeon] [k] radeon_get_ib_value
0.28% 0.00% 0.28% mplayer r300_dri.so [.] _mesa_update_state_locked
0.28% 0.00% 0.28% mplayer r300_dri.so [.] st_upload_constants
0.27% 0.00% 0.27% mplayer mplayer [.] mc_part
0.26% 0.26% 0.00% mplayer [kernel.kallsyms] [k] __kmalloc
0.25% 0.00% 0.25% mplayer mplayer [.] decode_cabac_mb_skip
0.25% 0.25% 0.00% mplayer [kernel.kallsyms] [k] handle_pte_fault
0.25% 0.25% 0.00% mplayer [kernel.kallsyms] [k] file_read_actor
0.24% 0.00% 0.24% mplayer mplayer [.] ff_thread_await_progress
0.24% 0.00% 0.24% mplayer mplayer [.] hl_motion
0.23% 0.00% 0.23% mplayer libpulse.so.0.12.2 [.] 0x24fec
0.23% 0.00% 0.23% mplayer [vdso] [.] 0x7fff83dff61a
0.23% 0.00% 0.23% mplayer r300_dri.so [.] r300_set_fragment_sampler_views
0.22% 0.22% 0.00% mplayer [drm] [k] drm_ioctl
0.22% 0.00% 0.22% mplayer mplayer [.] put_h264_qpel8_h_lowpass_l2_ssse3
0.22% 0.00% 0.22% mplayer mplayer [.] noise
0.22% 0.00% 0.22% mplayer r300_dri.so [.] _mesa_get_fixed_func_vertex_program
0.22% 0.00% 0.22% mplayer libpthread-2.13.so [.] __pthread_mutex_unlock
0.22% 0.13% 0.00% mplayer [kernel.kallsyms] [k] page_fault
0.22% 0.00% 0.22% mplayer r300_dri.so [.] _mesa_get_fixed_func_fragment_program
0.22% 0.22% 0.00% mplayer [radeon] [k] r300_cs_parse
0.22% 0.22% 0.00% mplayer [radeon] [k] r100_cs_packet_parse
0.22% 0.00% 0.22% mplayer r300_dri.so [.] _playback_copy_to_current
0.21% 0.00% 0.21% mplayer libc-2.13.so [.] __GI___ioctl
0.21% 0.00% 0.21% mplayer mplayer [.] vorbis_decode_frame
0.21% 0.00% 0.21% mplayer r300_dri.so [.] vbo_exec_FlushVertices_internal
0.21% 0.00% 0.21% mplayer libdrm_radeon.so.1.0.0 [.] radeon_cs_check_space_internal
0.20% 0.00% 0.20% mplayer libpulsecommon-0.9.21.so [.] 0x25c15
0.20% 0.00% 0.20% mplayer mplayer [.] decode_cabac_residual_dc_internal
0.20% 0.00% 0.20% mplayer libfreetype.so.6.6.0 [.] FT_Outline_Transform
0.19% 0.00% 0.19% mplayer mplayer [.] render_line
0.19% 0.00% 0.19% mplayer mplayer [.] ff_draw_horiz_band
0.18% 0.00% 0.18% mplayer mplayer [.] draw_edges_mmx
0.18% 0.00% 0.18% mplayer libm-2.13.so [.] __ieee754_pow
0.17% 0.17% 0.00% mplayer [radeon] [k] r100_cs_track_check
0.16% 0.00% 0.16% mplayer mplayer [.] put_h264_qpel16_mc00_sse2
0.16% 0.00% 0.16% mplayer mplayer [.] ff_pred4x4_dc_mmxext
0.16% 0.00% 0.16% mplayer mplayer [.] ff_h264_biweight_16x16_ssse3
0.16% 0.00% 0.16% mplayer r300_dri.so [.] cso_single_sampler
0.16% 0.00% 0.16% mplayer libfreetype.so.6.6.0 [.] gray_convert_glyph
0.15% 0.00% 0.15% mplayer r300_dri.so [.] util_copy_rect
0.15% 0.00% 0.15% mplayer libdrm_radeon.so.1.0.0 [.] radeon_cs_space_reset_bos
0.15% 0.00% 0.15% mplayer r300_dri.so [.] util_format_description
0.15% 0.15% 0.00% mplayer [kernel.kallsyms] [k] add_to_page_cache_locked
0.15% 0.00% 0.15% mplayer mplayer [.] cache_find_bitmap
0.15% 0.00% 0.15% mplayer r300_dri.so [.] r300_emit_vs_constants
0.15% 0.00% 0.15% mplayer r300_dri.so [.] _mesa_BindTexture
0.15% 0.00% 0.15% mplayer mplayer [.] ff_pred4x4_horizontal_up_mmxext
0.15% 0.07% 0.00% mplayer [kernel.kallsyms] [k] fget_light
0.15% 0.00% 0.15% mplayer mplayer [.] put_h264_qpel8_h_lowpass_ssse3
0.15% 0.15% 0.00% mplayer [radeon] [k] radeon_cs_update_pages
0.15% 0.00% 0.15% mplayer mplayer [.] ass_render_frame
0.15% 0.00% 0.15% mplayer r300_dri.so [.] st_finalize_texture
0.15% 0.15% 0.00% mplayer [ttm] [k] __ttm_tt_get_page
0.15% 0.00% 0.15% mplayer mplayer [.] decode_mb_skip
0.14% 0.00% 0.14% mplayer libfreetype.so.6.6.0 [.] gray_render_line
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] do_select
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] put_mems_allowed
0.14% 0.00% 0.14% mplayer r300_dri.so [.] pipe_reference_described.clone.1
0.14% 0.00% 0.14% mplayer r300_dri.so [.] r300_pick_fragment_shader
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] file_has_perm
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] __might_sleep
0.14% 0.00% 0.14% mplayer libc-2.13.so [.] __memcmp_sse4_1
0.14% 0.00% 0.14% mplayer libxcb.so.1.1.0 [.] 0x8752
0.14% 0.00% 0.14% mplayer r300_dri.so [.] _mesa_search_program_cache
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] audit_get_context
0.14% 0.00% 0.14% mplayer r300_dri.so [.] r300_emit_textures_state
0.14% 0.00% 0.14% mplayer libc-2.13.so [.] _int_free
0.14% 0.00% 0.14% mplayer mplayer [.] ff_h264_idct_add8_mmx2
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] __alloc_pages_nodemask
0.14% 0.00% 0.14% mplayer mplayer [.] decode_update_thread_context
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] arch_local_irq_restore
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] kmem_cache_alloc
0.14% 0.14% 0.00% mplayer [kernel.kallsyms] [k] avc_has_perm_noaudit
0.14% 0.00% 0.14% mplayer r300_dri.so [.] st_draw_vbo
0.14% 0.00% 0.14% mplayer libc-2.13.so [.] _IO_vfscanf_internal
0.14% 0.00% 0.14% mplayer libbs2b.so.0.0.0 [.] 0x2a4a
0.14% 0.14% 0.00% mplayer [drm] [k] drm_mm_search_free_in_range
0.14% 0.00% 0.14% mplayer r300_dri.so [.] r300_draw_vbo
0.14% 0.00% 0.14% mplayer r300_dri.so [.] update_textures
0.13% 0.00% 0.13% mplayer libpthread-2.13.so [.] __pthread_mutex_cond_lock
0.13% 0.00% 0.13% mplayer mplayer [.] pred4x4_horizontal_c
0.13% 0.00% 0.13% mplayer mplayer [.] ff_avg_h264_chroma_mc8_ssse3_rnd
0.13% 0.00% 0.13% mplayer mplayer [.] decode_slice_header
0.12% 0.00% 0.12% mplayer libdrm_radeon.so.1.0.0 [.] cs_gem_write_reloc
0.12% 0.12% 0.00% mplayer [kernel.kallsyms] [k] do_page_fault
0.12% 0.12% 0.00% mplayer [kernel.kallsyms] [k] unmap_vmas
0.11% 0.00% 0.11% mplayer libc-2.13.so [.] __memcpy_sse2
0.11% 0.00% 0.11% mplayer mplayer [.] MPV_frame_start
0.10% 0.00% 0.10% mplayer libpthread-2.13.so [.] __read
0.10% 0.00% 0.10% mplayer r300_dri.so [.] st_bufferobj_unmap
0.10% 0.00% 0.10% mplayer libc-2.13.so [.] __strcasecmp_l_sse42
--
Vladimir
More information about the MPlayer-users
mailing list