Changes between Version 1 and Version 2 of kernel_barriers
- Timestamp:
- Jan 19, 2015, 8:25:24 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
kernel_barriers
v1 v2 10 10 1. The '''simple_barrier_t''' implements a non-distributed toggle barrier. the number of expected tasks can be defined by the software. It can be safely used several times. 11 11 12 2. The '''sqt_barrier_t''' is physically distributed on all clusters, and is intended to avoid contention on a single cluster when a barrier is shared by a large number of tasks. It is implemented as a Synchronisation Quad Tree (SQT). For now, the number of expected tasks is defined by the number of processors specified in the mapping , and we use the smallest SQT covering all processors.12 2. The '''sqt_barrier_t''' is physically distributed on all clusters, and is intended to avoid contention on a single cluster when a barrier is shared by a large number of tasks. It is implemented as a Synchronisation Quad Tree (SQT). For now, the number of expected tasks is defined by the number of processors specified in the mapping (NB_TOTAL_PROCS). 13 13 14 14 All access functions are prefixed by "_" to remind that they can only be executed by a processor in kernel mode. 15 15 16 The '''simple_barrier_t''' and '''sqt_barrier_t''', structures are implemented to have one single barrier in a 64 bytes cache line, and should be aligned on a cache line boundary.16 The '''simple_barrier_t''' and '''sqt_barrier_t''', structures are implemented to have one single barrier node in a 64 bytes cache line, and should be aligned on a cache line boundary. 17 17 18 18