著者
山崎 修平 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-138, no.12, pp.1-7, 2016-08-01

近年,仮想化環境は広く使用されるようになっている.複数のマシンを動かすためにはハードウェア等の物理資源を仮想化して使用する必要があり,ハイパーバイザ型の仮想化ではハイパーバイザが物理資源を管理する.この様な環境ではスピンロックを獲得することができない仮想 CPU (仮想 CPU) が長期間ビジーウェイトしたままになってしまう Lock-Holder Preemption (LHP) という問題が発生することが知られている.この様な問題に対して,いくつかのハードウェアでは一定時間以上のビジーウェイトした場合にはハイパーバイザに制御を移すような機能が追加されている.Intel ではこれを Pause Loop Exiting (PLE) という.しかし,PLE を利用するだけでは LHP の完全な対策になっておらず,PLE が頻発することによってオーバーヘッドが掛かることがある.本論文では PLE の発生状況と,それに対するスピンロックの獲得状況を分析し,より効率よく PLE を使用するための新しい仮想 CPU スケジューリングの方法について提案する.