Hi,
can someone help me with following homework.
The inner loop of a matrix computation uses the statement
For J:=K step 1 until N do
A[i,J]:=A[i,J]xQ – A[K,J];
Assume that this statement is parceled out among the processors of a
multiprocessor system so that each processor executes statement for a
different value of J. Assume also that the multiprocessor system has a
central shared memory. When two different processors access the same
memory module simultaneously, the module responds immediately to one
processor, and the second processor has to wait one memory cycle, at
which time it repeats its request.
a) Assume that the array is stored by rows across the memories, so
that at ascending addresses are elements with index pairs, (1,1),
(1,2),...,(1,N),(2,1),...,(2,N),...,(N,N), as ascending addresses
cycle across the memories. Diagram cycle-by-cycle execution of first
five computation parcels under the assumption that all are initiated
simultaneously, and that the number of memories is N.
b) Now assume that array is stored so that each row of A lies in a
distinct memory module. Repeat part a).
c) Comment on the problem of data contention in this type of shared
memory system, based on your observation.
Thanks,
Blaz