Title :
Improving system throughput and fairness simultaneously in shared memory CMP systems via Dynamic Bank Partitioning
Author :
Mingli Xie ; Dong Tong ; Kan Huang ; Xu Cheng
Author_Institution :
Microprocessor R&D Center, Peking Univ., Beijing, China
Abstract :
Applications running concurrently in CMP systems interfere with each other at DRAM memory, leading to poor system performance and fairness. Memory access scheduling reorders memory requests to improve system throughput and fairness. However, it cannot resolve the interference issue effectively. To reduce interference, memory partitioning divides memory resource among threads. Memory channel partitioning maps the data of threads that are likely to severely interfere with each other to different channels. However, it allocates memory resource unfairly and physically exacerbates memory contention of intensive threads, thus ultimately resulting in the increased slowdown of these threads and high system unfairness. Bank partitioning divides memory banks among cores and eliminates interference. However, previous equal bank partitioning restricts the number of banks available to individual thread and reduces bank level parallelism. In this paper, we first propose a Dynamic Bank Partitioning (DBP), which partitions memory banks according to threads´ requirements for bank amounts. DBP compensates for the reduced bank level parallelism caused by equal bank partitioning. The key principle is to profile threads´ memory characteristics at run-time and estimate their demands for bank amount, then use the estimation to direct our bank partitioning. Second, we observe that bank partitioning and memory scheduling are orthogonal in the sense; both methods can be illuminated when they are applied together. Therefore, we present a comprehensive approach which integrates Dynamic Bank Partitioning and Thread Cluster Memory scheduling (DBP-TCM, TCM is one of the best memory scheduling) to further improve system performance. Experimental results show that the proposed DBP improves system performance by 4.3% and improves system fairness by 16% over equal bank partitioning. Compared to TCM, DBP-TCM improves system throughput by 6.2% and fairness by 16.7%. When compared with MCP, DBP-TCM p- ovides 5.3% better system throughput and 37% better system fairness. We conclude that our methods are effective in improving both system throughput and fairness.
Keywords :
DRAM chips; microprocessor chips; multi-threading; resource allocation; shared memory systems; DBP-TCM; DRAM memory; bank level parallelism; dynamic bank partitioning; interference; memory access scheduling; memory bank partitioning; memory channel partitioning; memory contention; memory requests; memory resource allocation; shared memory CMP systems; system fairness; system performance; system throughput; thread cluster memory scheduling; thread memory characteristics; threads requirements; Instruction sets; Interference; Memory management; Parallel processing; Random access memory; System performance; Throughput;
Conference_Titel :
High Performance Computer Architecture (HPCA), 2014 IEEE 20th International Symposium on
Conference_Location :
Orlando, FL
DOI :
10.1109/HPCA.2014.6835945