快乐虾
http://blog.csdn.net/lights_joy/
本文适用于
ADSP-BF561
Visual DSP++ 5.0 (update 7)
x264-snapshot-20091118-2245
欢迎转载,但请保留作者信息
在进一步的优化之前,我们需要确认程序的热点在哪里,使用vdsp提供的statistic profile,我们得到这样的一个初步结果:
根据这个结果,我们尽可能将执行率比较高的几个函数放到L1里面。
common/mc.c(248):static uint8_t *get_ref( uint8_t *dst, int *i_dst_stride,
common/pixel.c(245):static NOINLINE int x264_pixel_satd_8x4( uint8_t *pix1, int i_pix1, uint8_t *pix2, int i_pix2 )
common/mc.c(280):static void mc_chroma( uint8_t *dst, int i_dst_stride,
common/pixel.c(63):PIXEL_SAD_C( x264_pixel_sad_16x16, 16, 16 )
common/pixel.c(69):PIXEL_SAD_C( x264_pixel_sad_8x8, 8, 8 )
encoder/me.c(775):static void refine_subpel( x264_t *h, x264_me_t *m, int hpel_iters, int qpel_iters, int *p_halfpel_thresh, int b_refine_qpel )
common/quant.c(54):static int quant_4x4( int16_t dct[16], uint16_t mf[16], uint16_t bias[16] )
common/dct.c(121):static void sub4x4_dct( int16_t dct[16], uint8_t *pix1, uint8_t *pix2 )
common/pixel.c(220):static NOINLINE int x264_pixel_satd_4x4( uint8_t *pix1, int i_pix1, uint8_t *pix2, int i_pix2 )
encoder/macroblock_enc.c(606):void x264_macroblock_encode( x264_t *h )
common/pixel.c(66):PIXEL_SAD_C( x264_pixel_sad_8x16, 8, 16 )
common/mc.c(198):static void hpel_filter( uint8_t *dsth, uint8_t *dstv, uint8_t *dstc, uint8_t *src,
common/pixel.c(65):PIXEL_SAD_C( x264_pixel_sad_16x8, 16, 8 )
common/pixel.c(342):static NOINLINE uint64_t pixel_hadamard_ac( uint8_t *pix, int stride )
encoder/macroblock_enc.c(342):void x264_mb_encode_8x8_chroma( x264_t *h, int b_inter, int i_qp )
common/dct.c(194):static void add4x4_idct( uint8_t *p_dst, int16_t dct[16] )
其中,x264_me_search_ref函数因为代码量过大无法放在L1中,跳过它。
由于同样的原因,x264_macroblock_cache_load函数被我们放弃。
经过这样的处理后,我们得到下面的运行结果:
encoded 301 frames, 2.02 fps, 1081.88 kb/s
总共使用了 86492 M 个cycle,运算速度提高了6.5%。
近日,我家6岁的小姑娘参加了第六届POP全国少儿英语风采大赛,拉票进行中(2011-6-15前)。
请帮忙点击新东方网站的链接:
http://popdasai.xdf.cn/toupiao.php?do=space&uid=4237
投她一票,谢谢!
在ADSP-BF561上使用x264(4):打开cache(2009-11-24)
在ADSP-BF561上使用x264(3):正确性验证(2009-11-24)
ADSP-BF561软件优化(2):移植x264(2009-11-19)
ADSP-BF561软件优化(1):开篇(2009-11-18)