Impact of CC-NUMA Memory Management Policies on the Application Performance of Multistage Switching Networks

In this paper, the impact of memory management policies and switch design alternatives on the application performance of cache-coherent nonuniform memory access (CC-NUMA) multiprocessors is studied in detail. Memory management plays an important role in determining the performance of NUMA multiprocessors by dictating the placement of data among the distributed memory modules. We analyze memory traces of several scientific applications for three different memory management techniques, namely buddy, round-robin, and first-touch policies, and compare their memory system performance. Interconnection network switch designs that consider virtual channels and varying number of input buffers per switch are presented. Our performance evaluation is based on execution-driven simulation methodology to capture the dynamic changes in the network traffic during execution of the applications. It is shown that the use of cut-through switching with buffers and virtual channels can Improve the average message latency tremendously. However, the choice of memory management policy affects the amount of network traffic and the network access pattern. Thus, we vary the memory management policy and confirm the performance benefits of improved switch designs. Results of sensitivity studies by varying switch design parameters, cache block size, and memory page size are also presented. We find that a combination of first-touch memory management policy and a switch design with virtual channels and increased buffer space can reduce the average message latency by as high as 70 percent.

[1]  Lionel M. Ni,et al.  Critical factors in NUMA memory management , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.

[2]  Eric A. Brewer,et al.  PROTEUS: a high-performance parallel-architecture simulator , 1992, SIGMETRICS '92/PERFORMANCE '92.

[3]  David J. Lilja,et al.  Cache coherence in large-scale shared-memory multiprocessors: issues and comparisons , 1993, CSUR.

[4]  Josep Torrellas,et al.  The performance of the cedar multistage switching network , 1997, Supercomputing '94.

[5]  Michael L. Scott,et al.  Synchronization without contention , 1991, ASPLOS IV.

[6]  Anoop Gupta,et al.  SPLASH: Stanford parallel applications for shared-memory , 1992, CARN.

[7]  Laxmi N. Bhuyan,et al.  Evaluating virtual channels for cache-coherent shared-memory multiprocessors , 1996, ICS '96.

[8]  Chita R. Das,et al.  Performance benefits of virtual channels and adaptive routing: an application-driven study , 1997, ICS '97.

[9]  Carla Schlatter Ellis,et al.  Page Placement Policies for NUMA Multiprocessors , 1991, J. Parallel Distributed Comput..

[10]  Anoop Gupta,et al.  The DASH Prototype: Logic Overhead and Performance , 1993, IEEE Trans. Parallel Distributed Syst..

[11]  Dharma P. Agrawal,et al.  Performance of multiprocessor interconnection networks , 1989, Computer.

[12]  Paul Feautrier,et al.  A New Solution to Coherence Problems in Multicache Systems , 1978, IEEE Transactions on Computers.

[13]  Michel Dubois,et al.  Dynamic Page Migration in Multiprocessors with Distributed Global Memory , 1989, IEEE Trans. Computers.

[14]  Carla Schlatter Ellis,et al.  Experimental comparison of memory management policies for NUMA multiprocessors , 1991, TOCS.

[15]  Anoop Gupta,et al.  Operating system support for improving data locality on CC-NUMA compute servers , 1996, ASPLOS VII.

[16]  J LiljaDavid Cache coherence in large-scale shared-memory multiprocessors , 1993 .

[17]  Anant Agarwal,et al.  Directory-based cache coherence in large-scale multiprocessors , 1990, Computer.

[18]  Mohan Kumar,et al.  Performance of Multistage Bus Networks for a Distributed Shared Memory Multiprocessor , 1997, IEEE Trans. Parallel Distributed Syst..