Program analysis and transformations for fast data sharing
Li Mei Ai, G. Hermannsson, Larry D. Wittie · 2002
Distributed Shared Memory (DSM) systems have been proposed to combine the programmability of traditional shared memory and the scalability of message-passing systems. Eager DSM systems can greatly reduce access latencies for remote data by keeping copies of shared values in local memory and updating them immediately whenever a shared datum changes. However, sharing all changes globally can limit the system performance. It is usually possible to transform a program into an equivalent form that generates much less traffic, and therefore executes much more efficiently. This paper describes a compile-time analysis model for transforming simple shared memory programs with parallelized loop structures into programs that are optimized for efficient execution on eager DSM systems.>