Forums

matrix inverstion on ADSP TS101s

Started by caterpiller November 21, 2006
hi, there,

I am trying to look for a good algorithm for matrix inversion on ADSP
ts101s. It is better be the assembler language version.  I have tried
the C function matinvf() from Analog device library, It costs me 1.62ms
for a 32*32 float matrix. This time is not I want. I hope the
computation should be about 100 microseconds.

Does anybody know if the C library on VisualDSP++ is optimized for
TS101/TS202 chip or not?

Or if you can give me some clue to speed up this compuatation?

thanks and have a nice day.

bug.

"caterpiller" <bugzilla03@gmail.com> writes:

> hi, there, > > I am trying to look for a good algorithm for matrix inversion on ADSP > ts101s. It is better be the assembler language version. I have tried > the C function matinvf() from Analog device library, It costs me 1.62ms > for a 32*32 float matrix. This time is not I want. I hope the > computation should be about 100 microseconds. > > Does anybody know if the C library on VisualDSP++ is optimized for > TS101/TS202 chip or not? > > Or if you can give me some clue to speed up this compuatation?
As Carlos said, you may not need an actual matrix inverse, but simply the solution to the set of equations Ax=b. That will speed up your system substantially. There are direct methods for solving such a set of equations, e.g., Gaussian elimination with partial pivoting and Cholesky decomposition. There are also iterative methods that can trade off computational complexity for accuracy, e.g., successive over-relaxation (SOR(w)), Gauss-Seidel, and preconditioned conjugate gradient, to name a few. -- % Randy Yates % "She tells me that she likes me very much, %% Fuquay-Varina, NC % but when I try to touch, she makes it %%% 919-577-9882 % all too clear." %%%% <yates@ieee.org> % 'Yours Truly, 2095', *Time*, ELO http://home.earthlink.net/~yatescr