•ZPL uses a “single
program, multiple data” (SPMD) view Þ compiler produces 1 program
•Logically, ZPL
executes 1 statement at a time, but processors go
at their own rate using “data synchronization”
–
•
for i := 1
to n do
• [1..m,*]
Col := >>[ ,k] A; -- Flood kth col of A
• [*,1..p]
Row := >>[k, ] B; -- Flood kth row of B
•[1..m,1..p] C += Col*Row; -- Combine elements
•
end;
•
•