Title :
CableS : thread control and memory management extensions for shared virtual memory clusters
Author :
Jamieson, Peter ; Bilas, Angelos
Author_Institution :
Dept. of Electr. & Comput. Eng., Toronto Univ., Ont., Canada
Abstract :
Clusters of high-end workstations and PCs are currently used in many application domains to perform large-scale computations or as scalable servers for I/O bound tasks. Although clusters have many advantages, their applicability in emerging areas of applications has been limited. One of the main reasons for this is the fact that clusters do not provide a single system image and thus are hard to program. In this work we address this problem by providing a single-cluster image with respect to thread and memory management. We implement our system, CableS (Cluster enabled threads), on a 32-processor cluster interconnected with a low-latency, high-bandwidth system area network and conduct an early exploration of the costs involved in providing the extra functionality. We demonstrate the versatility :of Cables with a wide range of applications and show that clusters can be used to support applications that have been written for more expensive tightly-coupled systems, With very little effort on the programmer side: (a) We run legacy pthreads applications without any major modifications. (b) We use a public domain OpenMP compiler (OdinMP) to translate OpenMP programs to pthreads and execute them on our system, with no or few modifications to the translated pthreads source code. (c) We provide an implementation of the M4 macros for our pthreads system and run the SPLASH-2 applications. We also show that the overhead introduced by the extra functionality of CableS affects the parallel section of applications that have been tuned for the shared memory abstraction only in cases where the data placement is affected by operating system (WindowsNT) limitations in virtual memory mappings granularity.
Keywords :
multi-threading; shared memory systems; virtual storage; workstation clusters; M4 macros; OdinMP; OpenMP programs; SPLASH-2 applications; Windows NT limitations; data placement; high-end workstations; large-scale computations; legacy pthreads applications; low-latency high-bandwidth system; memory management; public domain OpenMP compiler; scalable servers; shared memory abstraction; single-cluster image; thread management; tightly-coupled systems; virtual memory mappings granularity; Cables; Cost function; High performance computing; Large-scale systems; Memory management; Personal communication networks; Program processors; Programming profession; Workstations; Yarn;
Conference_Titel :
High-Performance Computer Architecture, 2002. Proceedings. Eighth International Symposium on
Print_ISBN :
0-7695-1525-8
DOI :
10.1109/HPCA.2002.995716