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

虛擬化異質多核心之公平排程機制

VM-Aware Fair Scheduler on Virtualization Heterogonous Multi-Core Platform

指導教授 : 施吉昇

摘要


在異質多核心架構的系統中,結合多核心運算與虛擬化環境,更有效的運用底層運算資源成為重要的議題,但在此環境中如何設計排程機制來達到虛擬層上的虛擬機器所獲得的運算資源能等比於虛擬機器之間的重要性。在本篇論文中,我們設計一個在虛擬化異質多核心嵌入式環境上的公平排程機制(VM-aware Fair Scheduler)。並且依照異質多核心的特性,根據工作(Task)分配到不同特性的處理器(Processor)上分成先佔式(Preemptive)與非先佔式(Non-preemptive)公平機制排程。此外,設計負載分享程序(Load Sharing Procedure)與延遲提昇程序(Lag Boosting Procedure),負載分享程序讓負載較輕的處理器幫忙處理負載較重的處理器上的工作,延遲提昇程序則負責將虛擬機器間的不公平資源分享情況做適度的調整,讓分享資源相對落後的虛擬機器快速增加到適當的資源分享比例。 而在最後的效能評估結果中,我們驗證虛擬機器取向的公平排程器,能精確的依照虛擬機器間的優先權給予不同的運算時間;並且探討在達到更精確的公平下所需付出多做工作轉移的交互影響情況。

並列摘要


Heterogeneous multi-cores have been offered as the solution to meet the greater processing requirements that single core processors have been unable to fulfill. Special Purpose Processors (SPPs) are often more powerful in arithmetic such as Digital Signal Processors (DSPs) and Graphic Computing Units (GPUs). OpenCL has been proposed to unify the programming interfaces for various kinds of processors. Virtualization technologies serve as alternatives to manage computing resources, and have been applied to virtualizing GPUs recently. We propose to take advantages of both OpenCL and virtualization technology. But existing resource management policies is straightforward and therefore cannot well-respect each virtual machine’s priority in virtualized heterogonous multi-core environment. We propose the VM-aware fair scheduler to ensure each virtual machine could receive its proportional share of computing time over various kinds of devices. Moreover, we design the Load Sharing Procedure to requires light-loaded processors migrate workload from heavily-loaded processors. Besides, for adaptability to heterogeneous architecture natures, VM-aware fair scheduler (VMAFS) is divided into the two subroutines - VMAFS-P and VMAFS-N, depending on the preemptibility of tasks. We have to define a suitable notion of fairness on such architectures and use this notion to efficiently drive VMAFS-N to fairly manage non-preemptive computing resources.

參考文獻


[1] “The khronos group with opencl standard.”
[3] Renesas Electronics Corporation, “Naviengine.” at
Last accessed at June 2011.
[9] M. F. Mergen, V. Uhlig, O. Krieger, and J. Xenidis, “Virtualization for high-performance computing,” SIGOPS Oper. Syst. Rev., vol. 40, pp. 8–11, April 2006.
[10] J. Nickolls, I. Buck, M. Garland, and K. Skadron, “Scalable parallel programming with cuda,” Queue, vol. 6, pp. 40–53, March 2008.

延伸閱讀