I. Foster et al., THE NEXUS APPROACH TO INTEGRATING MULTITHREADING AND COMMUNICATION, Journal of parallel and distributed computing, 37(1), 1996, pp. 70-82
Citations number
47
Categorie Soggetti
Computer Sciences","Computer Science Theory & Methods
Lightweight threads have an important role to play in parallel systems
: they can be used to exploit shared-memory parallelism, to mask commu
nication and I/O latencies, to implement remote memory access, and to
support task-parallel and irregular applications. In this paper, we ad
dress the question of how to integrate threads and communication in hi
gh-performance distributed-memory systems. We propose an approach base
d on global pointer and remote service request mechanisms, and explain
how these mechanisms support dynamic communication structures, asynch
ronous messaging, dynamic thread creation and destruction, and a globa
l memory model via interprocessor references. We also explain how thes
e mechanisms can be implemented in various environments. Our global po
inter and remote service request mechanisms have been incorporated in
a runtime system called Nexus that is used as a compiler target for pa
rallel languages and as a substrate for higher-level communication lib
raries. We report the results of performance studies conducted using a
Nexus implementation; these results indicate that Nexus mechanisms ca
n be implemented efficiently on commodity hardware and software system
s. (C) 1996 Academic Press, Inc.