Changes between Version 8 and Version 9 of library_barrier
- Timestamp:
- Jan 4, 2015, 5:18:09 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
library_barrier
v8 v9 23 23 24 24 The ''giet_sbt_barrier_t'' can be used in multi-clusters architectures, and is implemented as a physically distributed Sliced-Binary-Tree (SBT). 25 The SBT topology is completely defined by the number of tasks, with the following constraints: 26 * The number of tasks must be a power of 2. 27 * There is one task per processor. 25 The SBT topology is completely defined by the number of involved clusters, with the following constraints: 26 * The number of involved clusters must be a power of 2. 28 27 * The involved clusters form a mesh[X][Y] where (X = Y) or (X = 2*Y). 29 28 * The lower left involved cluster is cluster(0,0). 30 29 * All involved clusters must contain a heap[x][y] vseg declared in the mapping. 30 * The number of involved tasks in a given cluster is the same for all clusters 31 31 32 32 The available functions are: 33 * '''sbt_barrier_init( giet_sbt_barrier_t * barrier, unsigned int n tasks )'''33 * '''sbt_barrier_init( giet_sbt_barrier_t * barrier, unsigned int nclusters, unsigned int ntasks )''' 34 34 * '''sbt_barrier_wait( giet_sbt_barrier_t * barrier )''' 35 35 36 The ''barrier'' argument is a pointer on a ''giet_barrier_t'' object. The ''ntasks'' argument is the number of expected tasks. 36 The '''barrier''' argument is a pointer on a ''giet_barrier_t'' object. 37 The '''nclusters''' argument is the number of involved clusters. 38 The '''ntasks''' argument is the number of expected tasks in a single cluster. 37 39 38 40 The sbt_barrier_init() contains a system call, but the sbt_barrier_wait() does not.