Nomadic Threads: a migrating multithreaded approach to remote memory accesses in multiprocessors
Stephen F. Jenks, Jean‐Luc Gaudiot · 2002
This paper describes an abstract multithreaded architecture for distributed memory multicomputers that significantly reduces the number of message transfers when compared to conventional "remote memory access" approaches instead of statically executing on its assigned processor and fetching data from remote storage, a Nomadic Thread transfers itself to the processor which contains the data it needs. This enables Nomadic Threads to take advantage of spatial locality found in the usage of many data structures, because the migration of a thread to a node makes access to surrounding data local. By reducing the number of messages and laking advantage of locality the Nomadic Threads approach allows programs to use fewer data transfers than conventional approaches while providing a simple runtime interface to compilers. The Nomadic Threads runtime system is currently implemented for the Thinking Machines Corp. Connection Machine 5 (CM5), but is portable to other distributed memory systems, including networks of workstations.