1. ## systolic array

http://users.informatik.uni-halle.de...lic_matrix.gif

from the systolic array picture above, one matrix is fed in a row at a time from the top of the array and is passed down the array, the other matrix is fed in a column at a time from the left hand side of the array and passes from left to right. Dummy values are then passed in until each processor has seen one whole row and one whole column. At this point, the result of the multiplication is stored in the array and can now be output a row or a column at a time, flowing down or across the array.

I want to make the matrix multiplication using systolic array method in C programming code, but dont know where to start.

1. what method that i need to use to make the c coding for the matrix multiplication using systolic array method, that by refer to the systolic array description above?

2. if someone have the systolic array algorithm, can paste the link here for me to make reference.

tq

2. I believe you can't MAKE the systolic array multiplication method in C, on a PC, because it doesn't have the systolic array of cells, in it's hardware.

You could simulate it, but it would be slower than using the hardware as it was built.

I looked, but only found applications using FPGA and other specialized hardware, not PC's.

There is a lot of info out there on the Cell processor from IBM/Sony/Toshiba, that went into PS3's, and some exotic super computers. Since the Cell uses a systolic array for a lot of it's throughput, you might want to read up on it, from that angle.

Otherwise, check out the forums and newsgroups that deal with higher math and computer programming, both.

Good luck.

3. ## systolic array

The cells in the picture is the dummy where my project does not use any hardware,just the C programming only..The matrix multiplication using systolic array method difference from conventional method. The conventional method is the common method use to multiply 2 matrix..

1. Can someone give the example of 2-dimensional systolic array matrix multiplication c coding?

tq,

4. Why can't you produce it (or at least make an effort).
It is after all YOUR project.

We're here to help, not do all the heavy lifting.

5. ## contd..

hello,

i try to do myself but i have a few questions:

1. Did you have the systolic array algorithm?(the way input enter in with multiplication and additonal process).
2. For the different size of input matrix size, did i need to build the new coding or not?

If someone have the systolic array algorithm can send to me because it is very useful to make the coding.

tq,

6. Whether we have or not doesn't matter.

If you can't find it by using google, then I doubt anyone here will spend the considerable number of hours it might take them to write it just for your convenience.

Looking at code is like being a restaurant critic. Sure you might learn a few things about the finished article, but if you really want to know how to cook, you've got to get into the kitchen!.

> For the different size of input matrix size, did i need to build the new coding or not?
Start simple, say with a 2x2 fixed array.

Making it dynamic later on is a trivial task, when everything else is working.
Doing it beforehand just adds complication and doubt.

7. Hello,
I also have to simulate a systolic array as a project.
The website below helped me getting started:
Instruction Systolic Array (ISA)

There's a page detailing how to process a matrix multiplication in a systolic array, which seems to be what you are looking for.

You could also get a look at "Systolic algorithms as programs" by K. Mani Chandy and J. Misra, it is very interesting.