著者
安野 直樹 石黒 健太 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-145, no.15, pp.1-6, 2019-02-21

仮想化環境では物理 CPU の個数よりも多くの仮想 CPU を利用することが一般的になっている.ゲスト環境は仮想 CPU がプリエンプトされることは想定せずに実装されているため,仮想 CPU のプリエンプトにより仮想時間の不連続性が発生する.スピンロック中などに仮想時間がとぎれると Pause Loop Exit (PLE) というイベントが発生し,仮想マシンモニタに通知が行われる.現状の仮想化環境では PLE が多発することがあることが知られており,本研究では KVM を対象にその要因を定量的に分析する.その結果,1) プロセッサ間割込み (IPI) 処理におけるバリア同期,2) スピンロックの獲得待ち,3) タイムスタンプベースの待機処理.という 3 つのケースで PLE が多発していることを示す.さらに,KVM では PLE の多発を避けるように仮想 CPU スケジューリングを行っているものの,現状では十分に機能していないことを示す.