刘品
学以致用---博主简介:专注语音、视频数字信号处理方面的研究以及算法在手机平台上面的移植和优化。涉及语音/音频编解码,语音增强,语音识别,语音音质客观评估,VOIP语音引擎 Qos算法模块和声音变速不变调和变调不变速等功能实现。熟悉ARM 各个系列的CPU,用ARMv4,ARMv5,ARMv6 and Cortex Neon 汇编优化相关算法代码,争取perforamance 最优。目前主要Windows mobile and Android platform上做相关speech/audio算法以及应用开发, HEVC 编解码器PC 和手机上的开发与应用。(交流Email:liupin.2008@gmail.com)

最近在ARMv5 Core 做 AMR-WB optimization, MIPS降到28时,有点做不动,开始用中文搜看看有没有好的经验share,但是一无所获。后来在google上,用 AMR-WB optimization search ,发现还是外国网站上的技术SOS做得好,中文的相关论坛都是灌水的多啊。bs一下。

    让我们学习一下外国技术论坛,我们应该要学习.

    Q:

Hello everybody,

I am working on the optimization of the AMR-WB speech codec code obtained from ITU-T on the c6211 dsk. I have done the optimization techniques suggested for TI's optimizing compiler like using intrinsics, loop trip counts, scratch-pad memory etc..BUt still haven't acheived the desired performance. The program takes 150 MCPS for full-duplex operation. I have to make it work under 25 MCPS for full-duplex. I guess I have to do algorithmic level optimization now.
I have some knowledge of the speech coding algorithms. But I am not sure about where to start from.
Please guide me as to what are the steps that has to be taken in this direction. What all things should be done. I would like to know whether its worth changing the algorithms. Or is there some other techniques like decreasing the bits used for the fixed-point representation in some parts, or change the tables that are used in the code-book search etc..Kindly list all of the techniques like these that are normally used. If assembly coding has to be done then how to choose the functions that needs to be optimized?
Thanks in advance for all your help..
Regards
Saleem

A1:

Saleem,
I suggest you to implement some functions in ASM whcih take much processing
time. Some of those signal processing functions may be optimized by using
ASM features like circular buffers, filters etc.


Good Luck.

A2:

Hai saleem,

Since you are going for algorithmic level optimization, you have to find which part of the codec is more complex. I think the codebook search algorithm will lead.
There also some function in the program which has small complexity but it will be called many times so that the final complexity due to the function will be large. So please find out which of the functions are called very frequently. Because small saving in that function will result in large difference.
There also many algorithm available in the net for efficient code book search, fast implementation of auto-correlation functions and convolution.
For example, convolution implemented using FFT requires less complexity. Blakenship method of implementing autocorrelation have less complexity.

Regards
Venkat Mistakes are not end of the world but repeating them is

A3:

Saleem:

Just adding to what venkat has said. I referred to the following link for options on autocorrelations
http://www.isip.msstate.edu/projects/speech/software/documentation/class/algo/Correlation/index .html

I used the second option given and that works fast as compared to the first one.

The site has given all the options for implementation and the references for their implementation.

All the best.

- Sanjay Patil
Mar 02, 2005. 1213 hours central. Wednesday. venkat ramanan <> wrote:

Hai saleem,

Since you are going for algorithmic level optimization, you have to find which part of the codec is more complex. I think the codebook search algorithm will lead.
There also some function in the program which has small complexity but it will be called many times so that the final complexity due to the function will be large. So please find out which of the functions are called very frequently. Because small saving in that function will result in large difference.
There also many algorithm available in the net for efficient code book search, fast implementation of auto-correlation functions and convolution.
For example, convolution implemented using FFT requires less complexity. Blakenship method of implementing autocorrelation have less complexity.

Regards
Venkat Mistakes are not end of the world but repeating them is

To
---------------------------------------------------------------------------------
Honour or Shame from no conditions doth rise,
ACT well you part, there's all HONOUR lies
---------------------------------------------------------------------------------
---------------------------------
Celebrate Yahoo!'s 10th Birthday!
Yahoo! Netrospective: 100 Moments of the Web

A4:

What is u r requirement?
I am not sure but I think u must be looking for bit exact implementation.
If it is so then you may loose bit exact implementation if u modify the
algorithm.
You need to consider this before modifying the algorithm.

Regards,
Nitin

 

This is all.

我看了一下,还是很有帮助的。



 

posted on 2008-09-28 15:43  liupin  阅读(1132)  评论(5)    收藏  举报

-->