ISSN 1000-1239 CN 11-1777/TP

• Paper • Previous Articles     Next Articles

Survey on Partitioning and Scheduling Policies of Shared Resources in Chip-Multiprocessor

Wang Lei1,2, Liu Daofu1,2, Chen Yunji1,3, Chen Tianshi1,3, and Li Ling1,3   

  1. 1(Key Laboratory of Computer System and Architecture, Chinese Academy of Sciences, Beijing 100190) 2(University of Chinese Academy of Sciences, Beijing 100049) 3(Loongson Technologies Corporation Limited, Beijing 100190)
  • Online:2013-10-15

Abstract: Chip multi-processor (CMP) is so prevalent that it has become the mainstream of high performance processors. CMP improves the throughput of processor, since it executes multiple threads simultaneously. Nevertheless, as some resources on chip are shared by all threads, there are new problems that does not exist in previous single-processor systems. The contention of shared resources between multiple threads executed on different cores can significantly influence the quality of service of some threads and degrade the overall performance of the system. As a result, how to schedule the shared resources (shared cache and main memory are two of the most important shared resources in CMP) fairly becomes a serious problem for CMP. In this paper, we summarize the recent studies of shared resource scheduling. Firstly, we introduce a series of cache partitioning algorithms to improve the throughput and fairness of shared cache, including some novel cache partitioning techniques that overcome the limitation of coarse-grain allocations. Then, we review some investigations on memory access scheduling from different perspectives by considering row-buffer locality, bank level parallelism, and so on. After that, we study some coordinated mechanisms that provide performance improvement of the entire system. Finally, potential research issues and future work are also introduced.

Key words: chip multi-processor (CMP), multi-thread, shared caches, cache partitioning, memory access scheduling