[x264-devel] PPC profile/benchmarks/computational complexity
R. Brouard
opensource at musemagic.com
Tue Dec 9 22:29:59 CET 2008
Thx.
What I want to do? Buy a small island in the BC CAN area, write a
novella illustrating my deepest stream of consciousness...
;) I'm looking at some embedded ports where they are using a PPC based
core.
Thx for the below, I'm also looking for, with all vectorized instr. on,
"extreme" profile, target bitrate, input mode. As you would expect to
see in a computational complexity or a "MIPS" document from say ARM or
TI. So total CPU time, total size of input test stream, fps, memory
usage requirements and then a breakdown of each module
My apologies for the newbie nomenclature vs. what you are using. I am
looking to expand, leverage on your existing optimizations and port and
just joined this list. So, also ramping up.
But first I have to give benchmark feasibility that x264 will "fit" to
move forward, thus your G4 benchmarking is most applicable to map an
est. over.
On Tue, 2008-12-09 at 22:08 +0100, Guillaume POIRIER wrote:
> Hello,
>
> On Tue, Dec 9, 2008 at 9:37 PM, Roberta <opensource at musemagic.com> wrote:
> > It has to do with a project I am looking at and
> > I cannot enable verbose mode on a PPC because I do not possess a PPC to
> > run the code on. I need the numbers to consider a particular effort in
> > a port.
>
> Ok, I guess my sarcasm doesn't didn't survive the translation. I
> meant: please give more details of what _exactly_ you want to do.
>
> x264 already has a PPC port with routines vectorized with
> Altivec/VMX/VelocityEngine instructions, but there are still a lot to
> do if we want to bring PPC port on par with x86 port. Any help is more
> than welcome.
>
> I _think_ that you were requesting a profile of x264 on an PPC
> machine. Here's one on a G4 with quite extreme setting (the ones you'd
> use for extra good picture quality):
>
> 8.5% pixel_sad_x4_16x16_altivec x264
> 8.4% pixel_sad_x4_8x8_altivec x264
> 7.7% get_ref_altivec x264
> 5.3% x264_me_search_ref x264
> 4.8% pixel_hadamard_ac x264
> 3.7% mc_chroma_altivec x264
> 3.1% block_residual_write_cabac x264
> 3.0% pixel_avg_16x16 x264
> 3.0% x264_quant_8x8_trellis x264
> 2.9% pixel_sad_16x16_altivec x264
> 2.8% pixel_satd_8x8_altivec x264
> 2.4% x264_pixel_sad_4x4 x264
> 2.3% pixel_satd_16x16_altivec x264
> 1.8% pixel_satd_4x4_altivec x264
> 1.4% __memcpy /usr/lib/libSystem.B.dylib
> 1.3% pixel_sad_x4_8x16_altivec x264
> 1.3% refine_subpel x264
> 1.3% pixel_sad_8x8_altivec x264
> 1.1% x264_quant_4x4_altivec x264
> 1.1% x264_macroblock_encode x264
> 1.1% x264_mb_encode_8x8_chroma x264
> 0.9% x264_add8x8_idct8_altivec x264
> 0.8% x264_quant_4x4_trellis x264
> 0.8% x264_macroblock_size_cabac x264
> 0.8% pixel_avg_8x8 x264
> 0.8% x264_sub8x8_dct_altivec x264
> 0.8% x264_cabac_mb_mvd x264
> 0.7% x264_sub8x8_dct8_altivec x264
> 0.7% x264_add4x4_idct_altivec x264
> 0.7% pixel_sad_x4_16x8_altivec x264
> 0.7% zigzag_scan_8x8_frame x264
> 0.7% pixel_sa8d_8x8_core_altivec x264
> 0.7% x264_mb_analyse_intra x264
> 0.7% pixel_satd_8x16_altivec x264
> 0.6% x264_pixel_sad_4x8 x264
> 0.6% x264_macroblock_analyse x264
> 0.6% x264_macroblock_cache_load x264
> 0.6% x264_decimate_score64 x264
> 0.5% x264_pixel_sad_8x4 x264
> 0.5% x264_dequant_8x8_altivec x264
> 0.5% x264_quant_8x8_altivec x264
> 0.5% mc_luma_altivec x264
> 0.5% x264_mb_predict_mv x264
> 0.5% pixel_satd_16x8_altivec x264
> 0.5% pixel_sad_x3_8x8_altivec x264
> 0.5% x264_dequant_4x4_altivec x264
> 0.5% x264_partition_size_cabac x264
> 0.4% frame_init_lowres_core x264
> 0.4% x264_mb_predict_mv_ref16x16 x264
> 0.4% x264_decimate_score15 x264
> 0.4% x264_decimate_score16 x264
> 0.3% x264_cabac_encode_decision_c x264
> 0.3% x264_zigzag_scan_4x4_frame_altivec x264
> 0.3% pixel_ssd_8x8_altivec x264
> 0.3% pixel_sad_x3_16x16_altivec x264
> 0.3% pixel_ssd_16x16_altivec x264
> 0.3% x264_me_refine_qpel_rd x264
> 0.3% ssim_end4 x264
> 0.3% x264_mb_mc_8x8 x264
> 0.3% ml_set_interrupts_enabled /mach_kernel
> 0.2% x264_sub4x4_dct_altivec x264
> 0.2% x264_me_refine_bidir_rd x264
> 0.2% x264_macroblock_cache_save x264
> 0.2% x264_mb_mc_01xywh x264
> 0.2% x264_macroblock_write_cabac x264
> 0.2% x264_hpel_filter_altivec x264
> 0.2% x264_coeff_last64 x264
> 0.2% x264_rd_cost_part x264
> 0.2% x264_analyse_update_cache x264
> 0.2% pixel_sad_8x16_altivec x264
> 0.2% x264_coeff_last16 x264
> 0.2% x264_mb_mc x264
> 0.2% x264_macroblock_encode_p8x8 x264
> 0.2% ssim_4x4x2_core_altivec x264
> 0.2% x264_predict_8x8_filter x264
> 0.2% x264_me_refine_bidir_satd x264
> 0.2% x264_mb_predict_mv_direct16x16 x264
> 0.2% x264_pixel_sad_x4_4x4 x264
> 0.2% x264_intra_rd_refine x264
> 0.2% x264_pixel_var_16x16 x264
> 0.2% pixel_satd_8x4_altivec x264
> 0.2% pixel_sad_16x8_altivec x264
> 0.2% mc_copy x264
> 0.1% x264_quant_2x2_dc_altivec x264
> 0.1% x264_rd_cost_mb x264
> 0.1% pixel_satd_4x8_altivec x264
> 0.1% predict_8x8c_p x264
> 0.1% __bzero /usr/lib/libSystem.B.dylib
> 0.1% x264_mb_analyse_inter_b16x16 x264
> 0.1% x264_mb_encode_i4x4 x264
> 0.1% x264_mb_analyse_inter_b8x8 x264
> 0.1% x264_mb_analyse_inter_p4x4 x264
> 0.1% predict_8x8_vr x264
> 0.1% predict_16x16_p_altivec x264
> 0.1% x264_slicetype_mb_cost x264
> 0.1% predict_8x8_vl x264
> 0.1% x264_mb_cache_mv_b8x8 x264
> 0.1% pixel_avg_4x4 x264
> 0.1% x264_pixel_var_8x8 x264
> 0.1% predict_8x8_ddr x264
> 0.1% predict_8x8_ddl x264
> 0.1% x264_cabac_mb_ref x264
> 0.1% x264_cabac_mb_intra4x4_pred_mode x264
> 0.1% x264_pixel_hadamard_ac_16x16 x264
> 0.1% x264_pixel_ssd_8x16 x264
> 0.1% x264_pixel_sad_x3_4x4 x264
> 0.1% x264_mb_analyse_inter_p16x16 x264
> 0.1% predict_8x8_hu x264
> 0.1% predict_8x8_hd x264
> 0.1% x264_ratecontrol_mb x264
> 0.1% predict_4x4_vr x264
> 0.1% x264_mb_encode_i8x8 x264
> 0.1% x264_mb_predict_mv_16x16 x264
> 0.1% x264_cabac_mb_type x264
> 0.1% pixel_sad_x3_8x16_altivec x264
> 0.1% x264_slices_write x264
> 0.1% x264_pixel_ssd_4x8 x264
> 0.1% predict_8x8c_dc x264
> 0.1% predict_4x4_ddr x264
> 0.1% pixel_sad_x3_16x8_altivec x264
> 0.1% x264_mb_analyse_p_rd x264
> 0.1% pixel_avg_8x16 x264
> 0.1% pixel_avg_16x8 x264
> 0.1% deblock_v_chroma_c x264
> 0.1% x264_mb_mc_direct8x8 x264
> 0.1% x264_mb_cache_mv_p8x8 x264
> 0.1% x264_cabac_mb_cbp_chroma x264
> 0.1% predict_4x4_hd x264
>
> Note that I didn't include the routines which weighted less than 0.1%
> Guillaume
More information about the x264-devel
mailing list