[x264-devel] PPC profile/benchmarks/computational complexity
Guillaume POIRIER
gpoirier at mplayerhq.hu
Tue Dec 9 22:08:14 CET 2008
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
--
Only a very small fraction of our DNA does anything; the rest is all
comments and ifdefs.
Franklin P. Jones - "All women should know how to take care of
children. Most of them will have a husband some day."
More information about the x264-devel
mailing list