Changes between Version 9 and Version 10 of library_barrier


Ignore:
Timestamp:
Feb 11, 2015, 6:46:01 PM (9 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • library_barrier

    v9 v10  
    1313
    1414The available functions are:
    15  * '''barrier_init( giet_barrier_t * barrier, unsigned int ntasks )'''
    16  * '''barrier_wait( giet_barrier_t * barrier )'''
     15 * '''barrier_init'''( giet_barrier_t * barrier, unsigned int ntasks )
     16 * '''barrier_wait'''( giet_barrier_t * barrier )
    1717
    1818The ''barrier'' argument is a pointer on a ''giet_barrier_t'' object. The ''ntasks'' argument is the number of expected tasks.
     
    2222== B) Distributed Barrier ==
    2323
    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 involved clusters, with the following constraints:
    26  * The number of involved clusters must be a power of 2.
    27  * The involved clusters form a mesh[X][Y] where (X = Y) or (X = 2*Y).
     24The ''giet_sbt_barrier_t'' can be used in multi-clusters architectures, and is implemented as a - physically distributed - Synchronisation-Quad-Tree (SQT). The SQT topology is completely defined by the (x_size / y_size) parameters, with the following constraints:
     25 * The involved clusters form a mesh(x_size * y_size).
    2826 * The lower left involved cluster is cluster(0,0).
    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
     27 * All involved clusters must contain a heap_x_y vseg declared in the mapping.
     28 * The number of involved tasks in a given cluster is the same for all involved clusters.
    3129
    3230The available functions are:
    33  * '''sbt_barrier_init( giet_sbt_barrier_t * barrier, unsigned int nclusters, unsigned int ntasks )'''
    34  * '''sbt_barrier_wait( giet_sbt_barrier_t * barrier )'''
     31 * '''sqt_barrier_init'''( giet_sbt_barrier_t * barrier, unsigned int x_size,  unsigned int y_size,  unsigned int ntasks )
     32 * '''sqt_barrier_wait'''( giet_sbt_barrier_t * barrier )
    3533
    3634The '''barrier''' argument is a pointer on a ''giet_barrier_t'' object.
    37 The '''nclusters''' argument is the number of involved clusters.
     35The '''x_size''' argument is the number of clusters in a row.
     36The '''y_size''' argument is the number of clusters in a column.
    3837The '''ntasks''' argument is the number of expected tasks in a single cluster.
    39 
    40 The sbt_barrier_init() contains a system call, but the sbt_barrier_wait() does not.
    4138
    4239== C) Barrier Initialization ==