Skip to content

Commit 5bca1cc

Browse files
committed
documentation
1 parent 7880bbf commit 5bca1cc

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

include/osp/bsp/model/BspArchitecture.hpp

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,28 @@ inline std::ostream &operator<<(std::ostream &os, MEMORY_CONSTRAINT_TYPE type) {
8484
* @brief Represents the architecture of a BSP (Bulk Synchronous Parallel) system.
8585
*
8686
* The BspArchitecture class stores information about the number of processors, communication costs,
87-
* synchronization costs, and send costs between processors in a BSP system. It provides methods to
88-
* set and retrieve these values.
87+
* synchronization costs, the send costs between processors, the types of processors, and the memory
88+
* bounds. It provides methods to set and retrieve these values.
89+
*
90+
* **Processors:**
91+
* The architecture consists of p processors, indexed from 0 to p-1.
92+
*
93+
* **Processor Types:**
94+
* Processors can have different types, which are represented by non-negative integers.
95+
* Processor types are assumed to be consecutive integers starting from 0.
96+
*
97+
* **Communication and Synchronization Costs:**
98+
* - Communication Cost (g): The cost of communicating a unit of data between processors, i.e., the bandwidth.
99+
* - Synchronization Cost (L): The cost of synchronizing all processors at the end of a superstep.
100+
*
101+
* **Send Costs (NUMA):**
102+
* The architecture supports Non-Uniform Memory Access (NUMA) effects via a send cost matrix.
103+
* The cost to send data from processor i to processor j is given by g * sendCosts[i][j].
104+
* By default, send costs are uniform (1 for distinct processors, 0 for self).
105+
*
106+
* **Memory Constraints:**
107+
* Each processor has a memory bound. The `MEMORY_CONSTRAINT_TYPE` determines how these bounds are applied
108+
* (e.g., local per superstep, global per processor).
89109
*/
90110
template<typename Graph_t>
91111
class BspArchitecture {

0 commit comments

Comments
 (0)