.. (לתיקייה המכילה) | ||
What is the connection between "bsp_sync()" and the cost l? | |
We don't measure the cost of "bsp_sync()". We either measure the cost of computation superstep or communication superstep. bsp_sync() indeed marks the finish of the superstep (issuing synchronization with the cost of l ); and then generates communication superstep with the cost of (hg+l). It's not correct to look at the cost of bsp_sync, as it is combines the cost of synchronization which is part of the computation superstep and the communication+synchronization, which are the cost of the communication superstep. |
Suppose p CPU's and a global variable G. In sequential part the master assigns 12 to G. In SPMD part (between bsp_begin() and bsp_end()), Can each cpu *read freely* this G, or master needs to broadcast it explicitly? | |
BSP is intended to run on distributed systems. The implementation we use is running on shared-memory system. Therefore, the behavior might be less restrictive in our environment, but cannot be relied on and using global variables is incorrect. To be more specific - it might happen that our shared-memory implementation, forks once bsp_begin occurs, so data from the sequential section can actually be accessed. However, in distributed systems - it won't be the case. |