著者
Fumiya Shigemitsu Mitsugu Suzuki
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-145, no.6, pp.1-9, 2019-02-21

Emerging Non-Volatile Main Memories (NVMMs) are expected to be next-generation storage. These memories promise to enable persistent memory, which can store data persistently at the main memory level with low latency. Therefore, the traditional primary storage hierarchy is extended to the non-volatile part by them. Integrating NVMM into computer systems includes some interesting challenges though they are expected to realize a fast and reliable computer system when using them. We explore NVMMs feature and how to handle them efficiently as main storage through developing a new file system in the Linux kernel which exploits memory hierarchy including NVMMs.
著者
東 耕平 竹腰 開 深井 貴明 品川 高廣 加藤 和彦
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-136, no.9, pp.1-8, 2016-02-22

仮想化技術を用いたクラウドコンピューティングによって提供されるサービスが広く利用されている中,ベアメタルクラウドと呼ばれる新しいサービスが近年注目を集めている.ベアメタルクラウドとは Infrastructure as a Serivce (IaaS) の一種であるが,従来の IaaS がユーザに対して仮想マシンを提供するのに対し,ベアメタルクラウドは物理マシンを提供する.これによって,ユーザは安定して高い性能・機能を発揮するマシンを比較的安価かつ容易に利用することが出来る.しかし物理マシンをユーザにそのまま提供してしまうと,ユーザは物理マシンのハードウェアに直接アクセスすることが可能になるため,重要な情報が記憶されている EEPROM などの不揮発性領域のデータが書き換えられてしまうことによって,マシンが恒久的に起動しなくなったりマルウェアに感染して次のユーザが影響を受けるなどの問題が発生する可能性がある.本稿では,軽量なハイパーバイザを利用して,重要なデータが記憶されている不揮発性領域へのアクセスを遮断する手法を提案する.これにより,ベアメタルクラウドの利点は維持しつつも,クラウド事業者が物理マシンのハードウェアを保護して安全性を確保できるようにする.
著者
迫田 賀章 青田 直大 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-138, no.17, pp.1-7, 2016-08-01

多量のデータを効率的に保持・管理・運用できるストレージシステムとして,キーバリューストア (KVS) が広く一般的に用いられている.本論文では,不揮発性 DIMM(NVDIMM) を用いた KVS のスループット向上手法を提案する.NVDIMM は,通常の DIMM に NAND Flash による待避領域を設けたものであり,不意の電源遮断等に対してもメモリの永続性を提供する.NVDIMM は DIMM と同等のレイテンシでアクセス可能である反面,その容量は DIMM のそれを超えることはできない.KVS は SNS などに用いられることが多く,読出し・書込みの比率が 1:1 となっており,書込みに対しても高いスループットが求められている.本論文では,書込みに対しても高いスループットを達成できる Log-Structured Merge-Tree(LSM-tree) に着目し,NVDIMM を用いて LSM-tree の性能向上を実現する.LSM-tree では,二次記憶上のデータ構造を再構成するコンパクションという処理が頻繁に行われるため,コンパクション時のアクセス遅延が増大する.LSM-tree の管理情報のみを NVDIMM 上に保存することで,コンパクション時の二次記憶へのアクセスを削減し,アクセス遅延の増大を抑える手法を示す.
著者
田内 聡一朗 光来 健一
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-146, no.8, pp.1-8, 2019-05-23

近年,クラウドサービスの一つとして,ユーザに仮想マシン(VM)を提供する IaaS 型クラウドが普及している.それに伴い,大容量のメモリを持つ VM が提供されるようになってきている.このような VM のマイグレーションを容易にするために,VM のメモリを複数の小さなホストに分割して転送する分割マイグレーションが提案されている.分割マイグレーション後にはリモートページングを行って VM が必要とするメモリをホスト間で転送する.しかし,従来のリモートページングでは必要とされたメモリの中に使用中のデータがなかったとしても転送を行う必要があった.本稿では,未使用メモリに関連するオーバヘッドを削減することで複数ホストにまたがる VM の高速化を実現するシステム FCtrans を提案する.FCtrans は VM の起動時から未使用メモリを追跡し,分割マイグレーション後も追跡を続ける.この情報を用いて,マイグレーション時には移送先ホストに未使用メモリを転送しないようにする.そして,分割マイグレーション後には未使用メモリに対してリモートページングを行わないようにし,未使用メモリにアクセスした VM の実行を即座に再開する.OS が解放したメモリページも未使用メモリとして扱えるように,VM の外から OS のページ管理情報を取得する.FCtrans を KVM に実装し,従来手法と性能を比較する実験を行った.
著者
下村 剛志 山田 浩史
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-146, no.11, pp.1-10, 2019-05-23

メモリは外的要因によるビットフリップやモジュールの故障により保存したデータが呼び出せなくなることがある.特に In-Memory Key-Value Store(In-Memory KVS)はメモリを大量に使用するのでメモリページのエラーに遭遇する可能性が高いアプリケーションの一つである.しかし,In-Memory KVS はメモリ上に全ての key-value を展開しており,再起動にかかるコストが高い.既存研究では ECC などの誤り訂正符号を用いたエラーの回復を行っているが,広範囲に渡るメモリのエラーには対応できていない.本論文では,メモリに部分的な故障が生じたとしても,In-Memory KVS を継続して稼働可能にする手法を提案する.提案手法では OS Kernel と In-Memory KVS を連携させ,メモリページのエラー発生時に破損ページに保存されていたデータオブジェクトの回復処理を行い,動作を継続させる.本研究では Linux Kernel 4.13.9 と memcached 1.4.39 に提案手法の実装を行った.評価実験を行い,メモリエラー発生時でも約 3 秒のダウンタイムでスループットの劣化無しに動作が継続することを確認した.
著者
高杉 頌 佐藤 将也 谷口 秀夫
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-146, no.12, pp.1-7, 2019-05-23

不揮発性メモリのアクセス速度が速くなっている.そこで,揮発性メモリと不揮発性メモリが混載された計算機を想定し,プログラム実行を高速化する手法として,新たな実行プログラムのファイル形式(OFF2F: Object File Format consisting of 2 Files)を提案した.OFF2F は,プログラムをメモリ上で実行するときのアクセス形態に着目し,2 つのファイルからなる実行ファイル形式である.本稿では,混載環境として,揮発性メモリのみを搭載した計算機で不揮発性メモリを擬似的に実現する手法を述べる.また,この擬似不揮発性メモリを用いて,OFF2F プログラムを実行する方式を述べる.
著者
水木 航平 廣津 登志夫
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-145, no.14, pp.1-8, 2019-02-21

近年,多くの企業でコンテナ型仮想化によるマイクロサービスアーキテクチャが広く使われるようになってきた.コンテナ型仮想化は起動時間が高速でイメージ管理が容易であるという特徴があり,Linux 向けのコンテナ仮想化技術としては Docker が広く使われている.このようなコンテナ型仮想化の利用場面を考えると,誤編集や誤操作によりサービス基盤となる重要な情報を壊してしまう人為的ミスや,攻撃によりコンテナ内のコンテンツが改竄されるリスクに対処する仕組みが必要になってくる.そこで,本研究では Docker のイメージ管理に使用される OverlayFS を改良して任意のタイミングでスナップショットを保存する機能を実現する.ここでは,状態の保存と観測というそれぞれの目的に適したスナップショットの方法として,ノーマルモードと強制書き出しモードの 2 つの方法を用意した.
著者
安野 直樹 石黒 健太 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(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 スケジューリングを行っているものの,現状では十分に機能していないことを示す.
著者
高橋 慧智 伊達 進 Khureltulga Dashdavaa 木戸 善之 下條 真司
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-137, no.13, pp.1-6, 2016-05-23

われわれは,ネットワーク内のパケットフローを動的に制御可能とする SDN に着眼し,並列分散プロセス間通信ライブラリ MPI の通信性能向上を目的とし,SDN-MPI の研究開発を推進してきた.SDN-MPI のプロトタイプ実装を通じて,本研究では,個別の MPI 関数を単独で実行した際の通信時間の短縮を実証した.しかし,これまでの実装は,MPI の個別の集団通信の高速化を実現するに留まっており,複数の集団通信が駆使された実際の MPI アプリケーションへの応用のためには,アプリケーションが呼び出す MPI 関数相互結合網の制御を連動・連携して行う仕組みが必要不可欠である.本稿では,そのような問題点に着眼し,われわれが開発してきた MPI 通信パターンに基づく SDN 制御を高速化するカーネルモジュールについて報告する.
著者
河辺 誠弥 谷口 秀夫 佐藤 将也
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2018-OS-142, no.2, pp.1-8, 2018-02-20

不揮発性メモリを有効利用するソフトウェア技術が研究されている.プログラムの実行を高速化する方式として,揮発性メモリと不揮発性メモリが混載された計算機を対象に,新しい実行プログラムのファイル形式 (OFF2F) が提案されている.OFF2F は,プログラムをメモリ上で実行するときのアクセス形態に着目し,2 つのファイルからなる実行ファイル形式である.本稿では,FreeBSD 11.0-RELEASE の初期化処理における OFF2F の効果予測を示す.
著者
窪田 貴文 鈴木 勇介 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2018-OS-143, no.9, pp.1-7, 2018-05-14

大規模なソフトウェアプロジェクトでは多くの開発者が修正 ・ 機能追加を行っており,膨大なファイルをコンパイルする機会が頻繁に生じている.例えば,オープンソースのブラウザエンジンである WebKit のビルドボットでは 31 日間のうち 26 日で 2000 秒超えるビルドが実行されており,その時のコンパイルしているファイル数は平均 1000 を超える.本研究では,まず,webkit を含むオープンソースの C/C++ プロジェクトのコンパイル時間を分析した結果を示す.その結果,コンパイラのフロントエンドにおいて冗長な処理が多く含まれていることがわかった.そこで本研究では,コンパイル結果を再利用することでコンパイラのフロントエンドの実行を高速化する手法を提案する.
著者
杉本 学 窪田 貴文 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2018-OS-143, no.14, pp.1-8, 2018-05-14

コンピュータシステムの信頼性を損なう要因の一つに,オペレーティングシステムのカーネルフェイラがある.実際,Linux には 700 以上のフォールトが存在し,半年間に 187,000 件以上の障害レポートが報告されている.カーネルにおけるフェイラでは,エラーがカーネル全体に伝播する場合は少なく,多くはカーネル内のプロセスコンテキストに閉じたプロセスローカルエラーとなっている.そして,フェイラの約 73 % はこのプロセスローカルエラーによるものである.本論文では,プロセスローカルエラーによるカーネルフェイラを検知しエラー状態を取り除くことで,カーネルの実行を継続する手法を提案する.プロセスローカルエラーでは,エラー状態がプロセスコンテキストに閉じているため,フェイラの発生したプロセスを強制終了することでカーネル内のエラー状態を回復させることができる.これにより,従来のカーネルではフェイラとなっていた場合でも,カーネルを停止させずに他のプロセスの実行を継続することができる.
著者
馬屋原 昂 佐藤 宏樹 石巻 優 今林 広樹 山名 早人
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.6, pp.1-7, 2017-07-19

マルチコアシステム上で多数のスレッドが同時実行される場合,メモリアロケーションがボトルネックになることがある.これは,複数のスレッドから同時にシステムコールが呼ばれることに起因する.TCMalloc,JEmalloc,SuperMalloc などの従来の汎用用途向けのメモリアロケータでは,各スレッドのローカルヒープメモリへロックフリーでアクセスすることで高速化を実現している.これに対して本稿では,完全準同型暗号計算を対象にした FCMalloc を提案する.完全準同型暗号計算ではメモリ使用量が既知の場合が多く,さらに,ある決まったパターンでメモリアロケーションが繰り返されるという特徴がある.こうした特徴を利用し,FCMalloc では pseudo free によってメモリマッピング情報を繰り返し利用することで,物理メモリレベルでメモリプールを用いる.さらに,ローカルヒープメモリ間の通信経路の構造を全結合とすることで,複数のスレッドによるアクセスのロック競合を減少させる.すなわち,システムコールの頻度を下げ,メモリ管理をできる限りユーザ領域で実現することにより高速化を実現する.完全準同型暗号上で構築した頻出パターンマイニングアルゴリズムである Apriori アルゴリズムを対象とした評価実験の結果,既存手法の中で最も高速である JEmalloc と比較して 2.4 倍の高速化を達成した.
著者
寺田 献 山田 浩史
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.5, pp.1-7, 2017-07-19

オペレーティングシステム (OS) が障害を検知した際の一般的な解決方法は OS とアプリケーションプログラム (App) の再起動である.これまでに OS の不具合からプロセスコンテキストを復元したり保護したりする手法が提案されているが,これらを両立する手法は提案されていない.再起動にかかる時間はサービスを提供することができないサービスダウンタイムとなり,サービスの可用性を大きく損なう.既存の手法では OS の障害によって App の実行状態が破壊される可能性があり,OS の障害から App の保護を行うことはできていない.本論文で提案する ShadowBuddy は発生した障害から App の実行を守るために,OS が不正な操作によって App の実行状態を破壊することを防ぎ,OS から保護された領域に App の実行状態を保存する.OS による不正なページテーブル操作,OS による App のメモリ空間への不正な読み書きを防ぎ,OS 内に存在する App の実行状態を破壊したとしても再現することのできるチェックポイントを作成する.ShadowBuddy は最小で数 % のオーバヘッドで,OS 透過に App のメモリ保護を行うことができる.
著者
田邨 優人 中島 耕太 山本 昌生 前田 宗則
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.22, pp.1-6, 2017-07-19

ハードウェアの進歩に伴い,従来よりも大幅に低レイテンシな記憶装置やインターコネクタが登場している.計算機環境のさらなる高性能化,大規模化が求められる昨今では,今後これらのデバイスが主流になると考えられるが,大部分の計算機システムではその高速性を活かせない場合が多い.その一つの原因としてカーネル内でデバイスからの応答の検知にハードウェア割り込みを使用していることが挙げられる.性能が重要視される HPC 分野などではハードウェア割り込みよりも高速にデバイスからの応答検知を行うために polling という手法が用いられる.しかし polling は CPU リソースを占有してしまうという特性から汎用的な計算機システムには積極的に用いられることはなかった.そこで本研究では CPU リソースを管理しながらカーネル内で polling を行うための polling idle ドライバを提案する.提案手法を NVMe over Fabrics に実装して評価を行ったところ,最大 47.1% のレイテンシ削減効果,最大 77.3% の iops 向上を確認し,また iops の上限値が従来から 40.2% 向上したことを確認した.
著者
小柴 篤史 坂本 龍一 並木 美太郎
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.21, pp.1-7, 2017-07-19

オンチップアクセラレータを用いたパイプライン並列処理は,チップ間のデータ転送とタスク実行をオーバラップすることでアクセラレータの演算性能を活用できる.しかしアクセラレータや DMA の実行制御,同期制御を頻繁に行う必要があるため,従来のデバイスドライバを介したアクセラレータ制御ではユーザ / カーネル空間のコンテキストスイッチに起因するオーバヘッドを招き,処理性能が低減する課題がある.そこで本研究では新たな OS の資源管理手法として,パイプライン並列処理向けのアクセラレータの制御機構を提案する.提案手法は,本来ユーザプロセスが行う煩雑なハードウェア制御をカーネルプロセスが代行する.これによりユーザ / カーネルプロセス間の通信を抑制し,制御オーバヘッドを削減する.本研究ではその初期検討として提案する OS 機構を Linux に実装し,ヘテロジニアスマルチコアプロセッサのプロトタイプを用いて評価した.アルファブレンダのパイプライン並列プログラムに提案機構を適用した結果,提案機構はデバイスドライバを用いる場合と比較してソフトウェアの制御オーバヘッドを 86.2% 削減し,プログラムの実行速度を 1.66 倍高速化することを明らかにした.
著者
穐山 空道 広渕 崇宏
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.12, pp.1-9, 2017-07-19

データセンタ省電力化のため計算精度を落とす代わりに消費電力を削減する近似実行 (Approximate Computing) が着目され,特に DRAM モジュールに適用し大容量化 ・ 消費電力増が進むメモリサブシステムを省電力化する研究が盛んである.近似実行では大幅な電力削減が可能な一方,データ化けによる計算誤差やクラッシュ等アプリケーションへの影響も大きく,実際のアプリケーションに対し近似実行の適用可能性の調査が必須である.適用可能性の調査には,どのデータを近似するか,DRAM の電力をどの程度削減するか等様々なパラメータが存在し,従って近似実行を活用するためにアプリケーションへの影響を様々なパラメータで軽量に調査できることが重要である.しかし既存研究ではメモリトレースツールやハードウェアエミュレータが利用され,これらは実機の数百倍から千倍程度低速である.そこで本研究では,コモデティな CPU のハードウェア機能を利用することでメモリへの近似実行がアプリケーションに与える影響を高速に見積もる手法を提案する.近似を許すデータと許さないデータを別々の NUMA ノードに配置しメモリコントローラーの性能カウンタから各データへの IO 量を取得することで,近似データへのエラー混入が計算結果に与える影響をハードウェアシミュレータなしに再現する.評価の結果,提案機構ではアプリケーションへの影響を実機の数倍程度の時間で見積もれることを確認した.
著者
石川 健一郎
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-138, no.7, pp.1-8, 2016-08-01 (Released:2016-07-29)

スケールアウト型分散ストレージで必要になる大量のデータとデータを記憶したサーバの対応の管理はテーブルでは難しく,適切に設計されたアルゴリズムによる管理が求められる.本論文ではデータを冗長記憶するスケールアウト型分散ストレージのために設計したデータ分散アルゴリズム ASURA を提案する.このアルゴリズムは次の特徴を持つ.1) データが冗長化されている場合においてもサーバ構成変更時に最小限のデータ移動のみ行う.2) 計算時間は 0.4μ 秒未満であり,オーダーは O(1) になる.3) データが十分あるときサーバ間のデータ分散のばらつきは 0.5%程度になる.4) サーバ容量に合わせてデータを分散できる.評価の結果,データを冗長記憶するスケールアウト型分散ストレージでは,類似アルゴリズムである Consistent Hashing,Random Slicing や Weighted Rendezvous Hashing などと比べて ASURA は優れた特性がある事を示した.
著者
山崎 修平 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(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 スケジューリングの方法について提案する.
著者
田所 秀和 長谷川 揚平 石山 政浩 松崎 秀則
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-138, no.15, pp.1-7, 2016-08-01

スケーラビリティの向上を目的として Key Value Storage (KVS) を利用したストレージシステムが使われつつある.このようなストレージシステムでは,KVS を複数利用して Storage Pool を作成し,ユーザは Object や Block など用途に合わせた Storage Interface を通して Storage Pool 上の KVS を利用する.今般,SSD などの高速なストレージデバイスを活用して KVS を高速化する技術が進展しており,それと並行して Storage Interface の高速化も重要になりつつある.そこで本稿では,高速な KVS やネットワーク環境を十分に利用することができる高速な Block Interface を提案する.このシステムでは Linux(R) カーネルの Multi-Queue を利用しつつ,効率良く KVS と通信を行うことで,高い性能を達成している.memcached を用いた実験により,4KB ランダムリードで 1Miops を越える性能を確認した.