# matrix inversion on ADSP TS101s

Started by 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 wrote:

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

My suggestion would be that you think carefully if you really
need to invert a matrix.  If it is to obtain x in Ax = b, then
you most definitely don't need to find A^-1 to do that --- you
solve by whatever method suits your application.

Most instances where we feel that we need to compute A^-1 can
be reduced to a case where you only need to solve a system
Ax = b.

Carlos
--
```
```Thanks.

I also want to confirm the time calculation

this is my code:

clock_t startTime,stopTime;
unsigned int timeDiff;

startTime = clock();
matinvf(shared_data,N,output_data);
stopTime = clock();
timeDiff=stopTime-startTime;

The TS101 is 250M Hz, so the total time is equal to
timeDiff/250,000,000 second. right?

thanks.

Carlos Moreno wrote:
> caterpiller wrote:
>
> > Or if you can give me some clue to speed up this compuatation?
>
> My suggestion would be that you think carefully if you really
> need to invert a matrix.  If it is to obtain x in Ax = b, then
> you most definitely don't need to find A^-1 to do that --- you
> solve by whatever method suits your application.
>
> Most instances where we feel that we need to compute A^-1 can
> be reduced to a case where you only need to solve a system
> Ax = b.
>
> Carlos
> --

```