70 likes | 155 Views
This system allows for dynamic data reduction through broadcast selection in distributed environments, optimizing memory accesses. Utilizes selective rules and associative reduction operators for efficient processing. Always question implications of operations for improved performance.
E N D
P=1 1j M P=N 1 i N 1 j M ER Exclusive Read EW Exclusive Write CR Concurrent Read CW Concurrent Write
P=1 1j M P=N 1 i N 1 j M ER P1 mj Pi mj EW P1 mj Pi mj CR i, Pi mj CW i, Pi mj
BSR- • Broadcast. Each Pi broadcasts a datum & tag, di & gi, respectively, to all M memory locations. So, i j, Pi sends < di , gi > to Uj, 1 i N , 1 j M
BSR- • Selection. Each Uj uses a “limit”, lj , with a selection rule, , to test gi. • So, evaluate gi lj where : , , , , , • If gi lj is TRUE, then di is selected (accepted) for the reduction phase, else it is rejected by Uj.
BSR- • Reduction. All di’s selected by Uj are combined (or reduced) into one datum using a binary associative reduction operator, R , with R being SUM, PRODUCT, AND, OR, XOR, MAX, MIN V • Result is stored in Uj.
Always question, never blindly accept (things are not always what they seem!). Further, there are always implications... • If all memory accesses take log(M) time, is there any such thing as a constant time operation/algorithm? • Does this somehow imply that it is possible to break O(1)?