hi I have seen at many places (e.g. commercial audio products employing standard audio codecs) that this algorithm takes that many MIPS on this processor. e.g. MELP 2.4kbps takes 66 MIPS on TMSxxxxx etc. (this is just an example). However, should it not be encoding time (taken in msec) for one frame of MELP (for 22.5 msec speech). although, i think, there are (time taken and MIPS) are equivalent to each other..?. thanx.. Khubaib |
|
Why specifying MIPS for speech encoding performance..?
Started by ●February 25, 2004
Reply by ●February 25, 20042004-02-25
Hello, It is more convienient and intutive to use MIPS as a metric when comparing the performance of the algorithm on different DSPs or embedded procesors (like ARM, MIPS). e.g. if a DSP processor offers 50 MIPS and a speech codec takes around 10 MIPS, one can quickly how many channels of speech can be processed in real time or what other algorithms like Line Echo Cancellation can be executed. Alternatively you can also think in terms of time e.g. how many speech samples or speech frames are buffered in 10 msec and for a specific processor you can calculate the number of instructions available based on its architecture and clock speed. However a word of caution when using MIPS as a metric, especially when using VLIW processors or other packed arithmetic processors. These DSP claim a MIP count based on the instruction count per cycle. However not all algorithms can exploit parallelism of these DSP. As a result, the effective MIPS of processor is much lower than its theoretical maximum. Kind Regards, Faisal Mateen. (GIKI, Pakistan) >From: "Khubaib" <> >To: >Subject: [speechcoding] Why specifying MIPS for speech encoding >performance..? >Date: Wed, 25 Feb 2004 12:31:19 -0000 > >hi >I have seen at many places (e.g. commercial audio products employing >standard audio codecs) that this algorithm takes that many MIPS on >this processor. e.g. MELP 2.4kbps takes 66 MIPS on TMSxxxxx etc. >(this is just an example). However, should it not be encoding time >(taken in msec) for one frame of MELP (for 22.5 msec speech). >although, i think, there are (time taken and MIPS) are equivalent to >each other..?. thanx.. >Khubaib _________________________________________________________________ Tired of spam? Get advanced junk mail protection with MSN 8. http://join.msn.com/?pageatures/junkmail |
Reply by ●February 25, 20042004-02-25
Khubaib- > I have seen at many places (e.g. commercial audio products employing > standard audio codecs) that this algorithm takes that many MIPS on > this processor. e.g. MELP 2.4kbps takes 66 MIPS on TMSxxxxx etc. > (this is just an example). However, should it not be encoding time > (taken in msec) for one frame of MELP (for 22.5 msec speech). > although, i think, there are (time taken and MIPS) are equivalent to > each other..?. thanx.. MIPS is a "rate" -- to show u how powerful a processor u need, or show u how much is left over to fit other algorithms. It has nothing to with framesize. Using your example above, if you want to know how many instructions the algorithm requires in one frame, then: 66 mil inst 22.5 msec ----------- x = 1.485 mil inst sec -Jeff |
Reply by ●February 26, 20042004-02-26
Hello Khubaib, I think MIPS is such a unit which judges performance of a codec 'independent of the clock frequency' of a given processor. Just to explain what i mean... - MIPS stands for Million Instructions Per Second (of speech/audio/video). It means if it is speech then for 20 msec frame there are 50 frames in a second. - Now when we say that a speech codec takes some 15 MIPS to execute encoding. It means to process 50 frames it takes 50 million basic assembly instructions. - Accordingly we can decide how many cycles it takes for this execution. If it executes one instruction per cycle then MIPS is same as MCPS. - Once we find number of cycles to process the frames(samples) with the help of clock period we can decide how much time (say in msec) it takes to process this. - So in effect we can always find time required to process frames from MIPS. But vice-versa is not true. Means if you specify the performance as time required to execute these frames in msec it depends on how much is your clock frequency. _ In that case to judge performance of one DSP with other for a given codec you also have to specify how much is clock frequency of each. That's why I think expressing perfornamce in MIPS is a better way... regards Jaydeep --- In , "Khubaib" <khabi_uet@y...> wrote: > hi > I have seen at many places (e.g. commercial audio products employing > standard audio codecs) that this algorithm takes that many MIPS on > this processor. e.g. MELP 2.4kbps takes 66 MIPS on TMSxxxxx etc. > (this is just an example). However, should it not be encoding time > (taken in msec) for one frame of MELP (for 22.5 msec speech). > although, i think, there are (time taken and MIPS) are equivalent to > each other..?. thanx.. > Khubaib |
|
Reply by ●February 27, 20042004-02-27
Hello Khubaib, I would like to add a little bit more. I think two terms MCPS and MIPS are used very commonly as per the comfort of the person who is selling DSP. Let us say I am selling my DSP XYZ. This DSP runs at 600 MHz clock frequency and can execute 8 basic assembly instructions (like load, multiply, add etc) in one cycle. I will tell to my customer that our processor can take a load of 4800 MIPS. This single figure of 4800 MIPS combines two things 1. clock frequency of our processor 2. parallelism of our DSP Thus while telling the capacity of processor MIPS is most attractive and suitable term. However interesting point is that it is not always possible in all apllications to utilize the whole instruction level parallelism. So from customer point of view 4800 MIPS figure can be a disguise. How much parallelism can be used will depend upon two things 1. nature of application itself 2. architecture of DSP. Now suppose customer asks me the performance of our DSP for some standard DSP algorithm for example suppose GSM-FR speech codec. Then I will use the term MCPS. Infact if I want to compare two DSPs in terms of speed then I will give the DSP vendors a list of wide range of DSP applications and will ask for MCPS figure for each application. Probably this is done in benchmarking bodies. Best regards manoj --- Jaydeep Inamdar <> wrote: > Hello Khubaib, > > I think MIPS is such a unit which judges > performance of a > codec 'independent of the clock frequency' of a > given processor. Just > to explain what i mean... > > - MIPS stands for Million Instructions Per Second > (of > speech/audio/video). It means if it is speech then > for 20 msec frame > there are 50 frames in a second. > > - Now when we say that a speech codec takes some 15 > MIPS to execute > encoding. It means to process 50 frames it takes 50 > million basic > assembly instructions. > > - Accordingly we can decide how many cycles it takes > for this > execution. If it executes one instruction per cycle > then MIPS is same > as MCPS. > > - Once we find number of cycles to process the > frames(samples) with > the help of clock period we can decide how much time > (say in msec) it > takes to process this. > > - So in effect we can always find time required to > process frames > from MIPS. But vice-versa is not true. Means if you > specify the > performance as time required to execute these frames > in msec it > depends on how much is your clock frequency. > > _ In that case to judge performance of one DSP with > other for a given > codec you also have to specify how much is clock > frequency of each. > > That's why I think expressing perfornamce in MIPS > is a better way... > regards > Jaydeep > > --- In , "Khubaib" > <khabi_uet@y...> wrote: > > hi > > I have seen at many places (e.g. commercial audio > products > employing > > standard audio codecs) that this algorithm takes > that many MIPS on > > this processor. e.g. MELP 2.4kbps takes 66 MIPS on > TMSxxxxx etc. > > (this is just an example). However, should it not > be encoding time > > (taken in msec) for one frame of MELP (for 22.5 > msec speech). > > although, i think, there are (time taken and MIPS) > are equivalent > to > > each other..?. thanx.. > > Khubaib > __________________________________ |