This paper proposes a method of eager and lazy evaluation of shared data in ccNUMA (cache-coherent non-uniform memory access time) systems. In the method, the latency of communication is reduced by alleviating the serialized access due to synchronization and the complexity of cache coherence actions. Let shared data consist of data units then a word-sized unit, as well as the memory block-sized unit, is available to avoid false sharing. Our synchronization cycle consists of two phases. The first phase serializes a prefetch request for each data unit into the queue for the unit. The second phase acquires and releases the exclusive copy of each data unit, directly and in a pipelined manner. from the previous and to the next owners, respectively, through a data flow like fine-grain synchronization scheme. Thus separate nodes can eagerly evaluate i.e., concurrently access distinct data units of, shared data. The scheme also support the lazy evalvation. The fine-grain schem is supported by a write-migrate cache protocol. For efficiency, the scheme and the queues are located in the cache. The prefetching and releasing are scheduled in soft ware. The synchronization performance obtained by analysis and simulation is shown.
展开▼