透過您的圖書館登入
IP:18.118.12.222
  • 學位論文

使用單指令集之異質多核心系統晶片之處理器與記憶體資源配置設計自動化方法

Processors and Memory Allocation for MPSoCs with Single-ISA Heterogeneous Multi-core Architecture

指導教授 : 陳依蓉

摘要


使用單指令集異質多核心架構(Single Instruction Set Architecture Heterogeneous Platform)的多核心系統晶片(Multi-Processor System-on-Chips, MPSoCs),其所有的處理器核心都使用相同指令集,但使用不同微架構(Micro Architecture)之相同指令集核心的差別在於其效能與功耗表現。因此,使用此架構之MPSoC有同質(Homogeneous)架構易於開發的好處,但也可以根據系統所執行之應用程式組的效能與功耗需求,挑選不同微架構之處理器以優化整體系統效能與耗能表現,因而兼具異質(Heterogeneous)架構可以客製化晶片元件的好處。但由於高效能處理器使用較複雜之微架構,而需較多功耗與晶片資源。因此,在使用單指令集之異質多核心晶片設計中,一個重要的設計問題,即為如何針對系統所執行的應用程式組之特性與效能需求,選用適當之處理器配置以達到最佳系統效能。為達成此目標,我們須考量: (1)應用程式是否有足夠之ILP(Instruction Level Parallelism)以致需求高效能之處理器;以及 (2)在有限晶片資源下,應使用多個低耗能低效能處理器以增加執行平行度,使其可同時服務多個程式,或是使用少量高耗電高效能處理器以減少應用程式組中最長執行路徑之執行時間;(3)在有限晶片資源下,除了上述配置之處理器以外,配置多少的晶片上記憶體(on-chip memory)以達最佳化效能。然而,多用於消費性電子產品之MPSoC,一般支援多種不同應用程式,且使用的核心數量也多,因此設計複雜度高且不易找到適當之系統組態。為了幫助使用單指令集異質之MPSoC的開發設計者能在系統層設計初期,能有效找到整體效能與耗能符合需求之系統組態,在本篇論文中,我們提出第一個為使用單指令集異質多核心架構之系統晶片,設計之處理器配置設計自動化演算法,此演算法的主要目的,為在有限晶片資源限制下,根據應用程式組之特性與需求,自動找出優化系統效能之處理器資源配置之組態,如應選哪幾種微架構之處理器,且每種處理器應配置幾個以外,還需要考量要配置多少的晶片上記憶體。除系統之處理器硬體架構以外,我們提出的設計自動化方法也會同時配合所選之硬體架構,進行應用程式組的工作分配(task allocation)與資料擺置(data placement)的軟體設計,利用軟硬體共同設計以在有限晶片資源下能夠更優化系統效能。根據實驗顯示,我們的演算法於所比較之系統架構在效能方面都有明顯的提升,且演算法的執行時間皆可於短時間之內完成自動化配置。

並列摘要


Single-ISA (Instruction Set Architecture) heterogeneous multi-processor architecture is promising for Multi-Processor System-on-Chips (MPSoCs) design. In this architecture, all processors execute the same instruction set, yet with various performance and power behavior due to various micro-architecture. Therefore, systems with this architecture has the advantages of easy for designers to develop new functions as the homogeneous architecture, and easy for designers to adapt the allocation of hardware resource to achieve high performance efficiency as the heterogeneous architecture. However, for an MPSoC with cost constraint, which is very commonly seen constraint, and utilizing the target architecture, a key design issue is how to select the set of processors and how large on-chip memory so that the target system can achieve good performance while the resource is constrained to the expected value. In this paper, we propose a processor and memory allocation method for MPSoCs with single-ISA heterogeneous multi-processor architecture to automatically synthesize the allocation of cores and on-chip memory for the given workload. The goal is to optimize system performance while the resource constraint is met. To the best of our knowledge, this is the first work that tackle the processor and memory allocation problem for MPSoCs with the target architecture. To bring out the best performance of a selected configuration, the proposed algorithm not only synthesize the allocation of cores and memory, but also the software design of task and data mapping. The experimental results show that, under the same resource constraint, the architecture generated by our proposed method achieves better performance than others. Besides, because of the shorter execution time of our algorithm , it can generate a appropriate configuration of each workload efficiently

參考文獻


[1] R. Kumar, K. I. Farkas, N. P. Jouppi, P. Ranganathan, and D. M. Tullsen, “Singleisa
heterogeneous multi-core architectures: the potential for processor power reduction,”
in Proc. MICRO’36, Dec. 2003, pp. 81–92.
[2] R. Kumar, D. M. Tullsen, P. Ranganathan, N. P. Jouppi, and K. I. Farkas, “Single-isa
heterogeneous multi-core architectures for multithreaded workload performance,” in

延伸閱讀