Cohesion: an efficient distributed shared memory system supporting multiple memory consistency models
Parallel Algorithms / Architecture Synthesis, AIZU International Symposium on (1995)
Aizu-Wakamatsu, Fukushima, Japan
Mar. 15, 1995 to Mar. 17, 1995
Ce-Kuen Shieh , Dept. of Electr. Eng., Nat. Cheng Kung Univ., Tainan, Taiwan
An-Chow Lai , Dept. of Electr. Eng., Nat. Cheng Kung Univ., Tainan, Taiwan
Jyh-Chang Ueng , Dept. of Electr. Eng., Nat. Cheng Kung Univ., Tainan, Taiwan
Tyng-Yue Liang , Dept. of Electr. Eng., Nat. Cheng Kung Univ., Tainan, Taiwan
Tzu-Chiang Chang , Dept. of Electr. Eng., Nat. Cheng Kung Univ., Tainan, Taiwan
Su-Cheong Mac , Dept. of Electr. Eng., Nat. Cheng Kung Univ., Tainan, Taiwan
This paper describes a prototype of DSM called Cohesion which supports two memory consistency models, namely Sequential consistency and Release consistency, within a single program to improve the performance and supports wide-variety of parallel programs for the system. Memory that is sequentially consistent is further divided into object-based and conventional (page-based) memory; where they are constructed in user-level and kernel-level, respectively. In object-based memory, the shared data are kept consistent at the granularity of an object; it is provided to improve the performance of the fine-grained parallel applications that may incur a significant overhead in conventional or release memory, as well as to eliminate unnecessary movement of the pages which are protected in a critical section. On the other hand, the Release consistency model is supported in Cohesion to attack the problem of excessive network traffic and false sharing. Cohesion programs are written in C++, and the annotation of shared objects for release and object-based memory is accomplished by inheriting a system-provided base class. Finally, three application programs including Matrix Multiplication, SOR, and Nbody have been employed to evaluate the efficiency of Cohesion. In addition, a Producer-Consumer program is tested to show that the object-based memory will benefit us in a critical section.
distributed memory systems; shared memory systems; C language; programming; Cohesion; distributed shared memory system; multiple memory consistency models; Sequential consistency; Release consistency; object-based memory; shared data; excessive network traffic; false sharing; C++; application programs; Matrix Multiplication; SOR; Nbody; Producer-Consumer program
J. Ueng, T. Chang, T. Liang, C. Shieh, S. Mac and A. Lai, "Cohesion: an efficient distributed shared memory system supporting multiple memory consistency models," Parallel Algorithms / Architecture Synthesis, AIZU International Symposium on(PAS), Aizu-Wakamatsu, Fukushima, Japan, 1995, pp. 146.