• 検索結果がありません。

2段仮想化構成のマルチコア性能改善と評価

N/A
N/A
Protected

Academic year: 2021

シェア "2段仮想化構成のマルチコア性能改善と評価"

Copied!
2
0
0

読み込み中.... (全文を見る)

全文

(1)情報処理学会第 77 回全国大会. 2A-03. 2 段仮想化構成のマルチコア性能改善と評価 服部 直也† 今田 貴之† 森木 俊臣† 日立製作所中央研究所†. 1.はじめに 今日の IT システムでは物理サーバに Virtual Machine Manager (VMM)をインストールして,複 数の仮想サーバ(VM:Virtual Machine)を運用する 構成が広く用いられている.物理サーバの性能 は年々改善しているため,既存のシステム群を より高性能な物理サーバで統合するニーズが繰 り返し発生する.本ニーズに応える選択肢の1 つとして,我々は日立論理分割機構 Virtage の上 で VMM を稼働させる 2 段仮想化構成を提案し ている[2][3]. 2 段仮想化構成の性能を分析したところ,VM にマルチコアを割り当てるとコア間の同期処理 が増えて 1 コアより性能が下がるケースがあっ た.そこで本研究では分析と改善に取り組んだ. 2.サーバ仮想化の仕組み サーバ仮想化とは,物理サーバに搭載された CPU コアなどを用いて仮想的なサーバ(VM)を作 り出し,複数の OS/AP を稼動させる技術である. サーバ仮想化は VMM を用いて実現する(図 1). VM. AP OS. 物理サーバ エミュレータ. AP OS VMM. :VM の CPU :特権命令 (IPI 制御等) : IPI 伝達. VT(Virtualization Technology) や 頻 度 を 減 ら す APICv (Advanced Programmable Interrupt Controller Virtualization)などの機能を実装し,性能低下を軽 減している[1]. 3. 2 段仮想化構成の概要 2 段仮想化構成では物理サーバを複数の論理的 な区画 (LPAR:Logical Partition)に分割し,LPAR 上で VMM を稼働させる(図 2).LPAR を制御す るハイパバイザには日立論理分割機構 Virtage な どが該当する.各 LPAR では VMM が動作し, VM を構築する.各 VM では,OS/AP が動作す る.その際,OS の特権命令で VMM のエミュレ ータが実行され,VMM の特権命令で Virtage の エミュレータが実行される.2 段仮想化構成では, エミュレータを実行する契機が多いため,性能 が低下し易い. VM. AP OS. AP OS. LPAR. 物理 サーバ. エミュレータ. VMM. エミュレータ. Virtage. :物理 CPU. AP OS. AP OS. VMM. 図 2:2 段仮想化構成の例. 図 1:サーバ仮想化の基本構成. 4.2 段仮想化構成のマルチコア性能分析 2012 年製の物理サーバを用いて 2 段仮想化構成 一般に OS は CPU コア間割り込み(IPI:Inter の プ ロ ト タ イ プ で OLTP (On Line Transaction Processor Interrupt)を送受信するなどの目的で特 Processing)を実行した時の相対処理時間を図 3 に 権命令を使用する.しかし,特権命令はシステ 示す.横軸は VM に 1 コアを割り当てた場合の ム内で最高権限を持つプログラムしか実行でき ないため,図 1 の OS は特権命令を実行できない. 処理時間を 1.0 としているが,VM に 2 コアを割 り当てると予想に反して性能が劣化している. そこで VMM はエミュレータを用いて OS の特権 原因を調べると,2 段仮想化構成では同期処理が 命令を代理実行する.エミュレータは直接実行 0.77 と非常に長くなっている. に比べて低速なので,サーバ仮想化を用いると 0.0 0.5 1.0 1.5 相対時間 性能は低下する.サーバ仮想化のために CPU ベ ン ダ は,エ ミ ュ レ ー タ の 実 行 を 支 援 す る 2 段仮想化構成 主処理 (VM=1 コア). Multi-Core Performance Improvement and Evaluation of Nested Virtualization Server. 2 段仮想化構成 (VM=2 コア). Naoya Hattori†, Takayuki Imada† and Toshiomi Moriki† †Hitachi, Ltd., Central Research Laboratory. 主処理. 同期処理. 図 3:2 段仮想化構成での OLTP 処理時間. 1-15. Copyright 2015 Information Processing Society of Japan. All Rights Reserved..

(2) 情報処理学会第 77 回全国大会. 同期処理の時間が長い原因を更に分析したと ころ,IPI 送受信時に実行される VMM のエミュ レータが問題と判明した.OS は IPI を 1 回送受 信するために,割り込み情報を操作する特権命 令 3 つと IPI を送信する特権命令 1 つを実行する (図 4).各特権命令は VMM のエミュレータによ って処理されるが,VMM のエミュレータは VT 制御などの特権命令を多数含むので,更に Virtage のエミュレータを何度も呼び出す.その ため 2 段仮想化構成では VMM のエミュレータ 実行に長時間を要していた.. 6.性能評価 本研究では仮想 APICv 方式のプロトタイプを 実装し,表 1 の構成で同期処理時間を測定した. 同期処理時間は仮想 APICv の効果で 67%減少 した(図 6).OLTP 処理時間の推定値も 2 コアが 1 コアより短縮されており(図 7),本方式でマルチ コア性能が改善する見通しが得られた. 表 1: 性能評価に用いた 2 段仮想化構成 SW VM HW. VM. LPAR 物理 サーバ. AP OS. エミュレータ 割込情報. :特権命令 割込情報操作, IPI 送信, VT 制御等 : IPI 伝達. VMM. SW LPAR. HW SW. CPU エミュレータ. Virtage. 物理. HW. 図 4:IPI 送受信時の特権命令処理 5. 仮想 APICv 方式の提案 2 段仮想化に限らず同期処理に伴うエミュレー タ実行は仮想化一般で問題になっていた.そこ で CPU ベンダは 2013 年から APICv と呼ばれる 機能を搭載し始めた.APICv は,割り込み情報 を取得/更新する特権命令に対して,エミュレ ータ相当の処理を CPU コアが直接実行する機能 である.本機能を用いると VMM のエミュレー タ実行が減るためマルチコア性能が改善する. 以上を踏まえて我々は 2 段仮想化構成向けに, LPAR 上で APICv 機能を提供する仮想 APICv 方 式を提案する.本方式では,VMM が APICv を 有効化する際に,Virtage のエミュレータが CPU コアの APICv を有効化する(図 5).以降は OS が IPI を送受信する際に,CPU コアが割り込み情報 を操作する特権命令を直接実行する.そのため VMM と Virtage のエミュレータ実行が減って, 同期処理時間が短縮される. VM. AP OS. :特権命令 割込情報操作, IPI 送信, VT 制御等 : IPI 伝達. 割込情報. LPAR 物理 サーバ. AP OS CPU Memory VMM CPU Memory Hypervisor Server. エミュレータ VMM. Virtage. 仮想 APICv なし 67%減. 仮想 APICv あり 0. 50. 100. 150. 200. 250. 図 6:仮想 APICv による同期処理時間[ns]の変化 0.0 2 段仮想化構成 (VM=2 コア). 主処理. 0.5. 1.0. 1.5. 相対時間. 同期 処理 67%減. 図 7:仮想 APICv 適用時の推定 OLTP 処理時間. 7.まとめ 本研究では,2 段仮想化構成に於けるマルチコ アの同期処理時間を短縮する仮想 APICv 方式を 提案し,プロトタイプを用いて同期処理時間の 67%減少を確認した.本方式により 2 段仮想化構 成のマルチコア性能が改善する見込みである. 今後は実機評価を充実させると共に,より新 しい CPU を活用する性能改善に取り組みたい. 参考文献 [1] Intel®64 and IA-32 Architectures Software Developer’s Manual [2] 水野和彦他,2 段仮想化構成のユースケース提案と評 価, 電子情報通信学会総合大会講演論文集 2012 年 情報・ システム(1), 91, 2012-03-06 [3] 服部直也他,2 段仮想化構成のメモリ性能改善と評価, 電子情報通信学会総合大会講演論文集 2012 年 情報・シ ステム(1), 90, 2012-03-06. APICv 設定 エミュレータ. Memory NIC HBA Storage. セマフォによる同期処理ベンチマーク Fedora 20(64bit) 4Core 4GB qemu-kvm-1.6.2-12.fc20.x86_64 8Core 8GB 仮想 APICv 方式のプロトタイプ BS2000 BladeSymphony E55R4 Intel® Xeon® CPU E5-2697 v2 (2socket:計 12Core) (HyperThread/ターボ/省電力は無効) 16GB (1333 MHz) Intel 82576 Emulex LPe12002 (PCI) Hitachi AMS2100 (40GB LU x1). 連動 APICv 設定. 図 5:仮想 APICv 方式. 1-16. Copyright 2015 Information Processing Society of Japan. All Rights Reserved..

(3)

図 6:仮想 APICv による同期処理時間[ns]の変化  図 7:仮想 APICv 適用時の推定 OLTP 処理時間  7.まとめ  本研究では,2 段仮想化構成に於けるマルチコ アの同期処理時間を短縮する仮想 APICv 方式を 提案し,プロトタイプを用いて同期処理時間の 67%減少を確認した.本方式により 2 段仮想化構 成のマルチコア性能が改善する見込みである.  今後は実機評価を充実させると共に,より新 しい CPU を活用する性能改善に取り組みたい.  参考文献

参照

関連したドキュメント

区内の中学生を対象に デジタル仮想空間を 使った防災訓練を実 施。参加者は街を模し た仮想空間でアバター を操作して、防災に関

究機関で関係者の予想を遙かに上回るスピー ドで各大学で評価が行われ,それなりの成果

VMWare Horizon HTMLAccess はこのままログインす ればご利用いただけます。VMWare Horizon Client はク

 仮定2.癌の進行が信頼を持ってモニターできる

LLVM から Haskell への変換は、各 LLVM 命令をそれと 同等な処理を行う Haskell のプログラムに変換することに より、実現される。

4G LTE サービス向け完全仮想化 NW を発展させ、 5G 以降のサービス向けに Rakuten Communications Platform を自社開発。. モデル 3 モデル

本検討で距離 900m を取った位置関係は下図のようになり、2点を結ぶ両矢印線に垂直な破線の波面

「Silicon Labs Dual CP210x USB to UART Bridge : Standard COM Port (COM**)」. ※(COM**) の部分の