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

應用緊密耦合記憶體之Linux內核效能最佳化

Optimizing Linux Kernel Performance with Tightly-Coupled Memory

指導教授 : 黃育綸

摘要


緊密耦合記憶體 (Tightly-Coupled Memory,TCM) 比傳統記憶體結構擁有高速存取與低耗電的優點。為此,TCM 最適合用於關鍵的常用程式和資料結構。當前此領域的研究都是集中在非作業系統的嵌入式應用程式,例如多媒體資料的處理,以提高整體效能。可能是由於 Linux 內核程式碼和其資料結構是龐大且複雜的,因此沒有關於將作業系統內核函數程式放到 TCM 之性能影響的討論。不當安排內核函數程式在 TCM 中會造成效能降低。在本論文中,我們分析 TCM 的利用率和效能的影響,並把 Linux 內核函數程式根據 TCM 的容量進行分組。然後,我們選擇不同群組的 Linux 內核函數程式進行個別編譯,在系統執行期間將這些群組放入 TCM 並且不再置換。通過使用 lmbench 的實驗,我們找到把 exec() 或 schedule() 函數程式放置到 TCM 可以縮短本地端通信延遲 13%-14%。

並列摘要


TCM (Tightly-Coupled Memory) is advantaged of high-speed data access with lower power consumption than the traditional memory architecture. As such, TCM is a best fit to hold mission critical routines and data structures. Prior research of this area has emphasized on how TCM can be applied to non-OS embedded applications, like media streaming, to improve the overall performance. Possibly due to large and complicated Linux kernel code base and its data structures, there is no discussion regarding the performance impact when placing OS kernel functions into TCM. An improper arrangement of kernel functions in TCM can contrarily downgrade the performance. In this paper, we analyze the utilization and performance impact of TCM, and classify Linux kernel functions into groups per the TCM capacity. Then, we select different groups of Linux kernel functions at the compiling time and place these function groups into TCM without swapping them out during execution. By conducting the experiments with lmbench, we find that placing exec() or schedule() into TCM can reduce the local communication latency by a factor of 13% - 14%.

並列關鍵字

Tightly-Coupled Memory TCM Embedded system Linux

參考文獻


[2] R. Banakar et.al., "Scratchpad Memory: A Design Alternative for Cache On-chip
[3] P.Panda, N.Dutt, and A.Nicolau. "Efficient utilization of scratch-pad memory in embedded processor applications," In Proc. DATE, 1997.
[4] O. Avissar, R. Barua, and D. Stewart, "An optimal memory allocation scheme for scratch-pad-based embedded systems," Trans. on Embedded Computing Sys., vol. 1, no. 1, pp. 6–26, 2002.
[5] O. A. Ece, "Heterogeneous memory management for embedded systems," 2001.
[7] Wanessa Pereira Dias et al. "Performance Analysis of Cache and Scratchpad Memory in an Embedded High Performance Processor," 2011

延伸閱讀