３歩あるいて忘れる鶏の群でなく～OSとノーマリオフコンピューティング～

並木美太郎(東京農工大学)

20120119ARC&ICDパネル

1

ストアードプログラム型計算機の本質
演算系、状態保持系、I/O系
 演算系は先ほどのとおり
 では？状態保持系は？
(実はこれこそが本質的)

20120119ARC&ICDパネル

2

自分のノーマリオフコンピュー
自分のノマリオフ ンピ
ティングのイメージ
普段は通電されてなく、必要になったときに電源が入って利用できる 計算機 ソフトウェア ネットワ クの構成方式
できる、計算機、ソフトウェア、ネットワークの構成方式
 だから、とっても省電力
 構成要素、アーキテクチャ、ソフトウェアのいずれにも適用可
構成要素 ア キテクチャ ソフトウ アのいずれにも適用可能な概念
 対象によって議論が微妙に食い違う部分と、普遍な本質的な対象によって議論が微妙に食い違う部分と 普遍な本質的なところと両面あると思われる
 何が犠牲になるかは、まだよくわからない(win
何が犠牲になるかは まだよくわからない(win-winなのか？)
winなのか？) ただし、新しいデバイス(不揮発メモリ)を想定すると興味をそそられる
 多くのソフト屋は、この言葉はまだ知らない3

メモリ系：計算機の記憶階層※μアーキテクチャでは内部に隠ぺいされた大量のFF群
1clock1～数clock
数～数10clock

数10～1KB以下

プロセスコンテキスト
ンテキ

数KB

L1

数10KB～MB

L2
キャッシュ
キャ
シ
メモリ

数10～clock 数100M～GB
数100μs～数10ms
数100G～TB

レジ
スタ

高速小容量

緩和的フラッシュ
プロセス間の相性
L3

主記憶

2次記憶

広域ネットワーク上のデータ↓従来のOSメモリ管理
ファイルシステム

低速大容量4

手っとり早く、かつ、実用化され手っとり早く、か、実用化されたのはSSD
高速小容量

デバイスド
ライバ、または ファイ
たは、ファイ
ルシステム

レジ
スタ

L1
L2
キャッシュ
キャ
シ
メモリ

書換え回数上限を緩和、書込み時間隠ぺい
L3

主記憶
SSDをディスクキャッシュ
TurboMemory, FlashCache, Flaz, ZFS...

2次記憶

ファイルシステム
ログFS,ExtremFFS, BtrFS, unionFSと併用など

広域ネットワーク上のデータ

低速大容量
5

「やってみた」
ユーザアプリケーション

file

ファイル操作（r/w）
Linux カーネル

(トリビアの泉のナレーションのノリで)システムコール

ア リケ シ ン ら
アプリケーションからはHDD上のファイルシステムのみが見える

各種ファイルシステム
ブロックI/O要求

ディスクキャッシュドライバ
参照・更新
→

キャッシュ
管 情報
管理情報

ブロックI/O要求

下位デバイスドライバ
実際のI/O実行

2012#53 IPSJ
プロシン

HDD

SSD

本研究での実装部分
SSD のキ
SSDへのキャッシングを管理
シ グを管理キャッシュ管理と追出しアル
ゴリズムには工夫がある

HDDと主記憶間のキャッシュとして利用 6

ベンチマークによる評価
目的 サーバーにおけるファイル入出力処理をエミュレーションするベンチマークを実行し，実行性能と消費電力を測定する
評価方法
 ext3ファイルシステムにフォーマットしたストレージに対し，Filebenchを用い 次の4種類のワークロードを実行
Filebenchを用い，次の4種類のワ
クロ ドを実行 fileserver - ファイルサーバ（100スレッド，R/W比1:2）
 varmail - メールサーバ（100スレッド，R/W比1:1）
 webserver - ウェブサーバ（100スレッド，R/W比10:1）
 oltp - オンライントランザクション処理を行うDBサーバ（R/W比20:1）
 各ベンチマークを10分間実行し，オペレーションの処理数とI/Oの時間分布，全体の平均消費電力を測定

7

性能評価：オペレーション数
1秒当たりの平均オペレーション処理数（ops/s）
fileserver
webserver
varmailoltp

HDD SSD 本方式
457 9847
8695
26326 25456 25861
893 24298 19610
294 19163
4198

write オペレーションの割合が多いワークロードほど，高い性能
20120119ARC&ICDパネル

8電力評価（エネルギー効率）

平均処理速度（ops/s）/ストレージ全体の平均消費電力（J/s）= １Ｊ当たりのオペレーション処理量（ops/J）
p /→ この値が大きいほどエネルギー効率が良い
各ストレージのエネルギー効率（ops/J）

HDD
fileserver
webserver
varmail
oltp

SSD
84
5161
171
56

本方式
8871
28284
23821
15088

1432
4474
3127
709

←悪くなってる

SSD とHDDの消費電力を足しても，ほとんどの場合でHDDよりもエネルギー効率が良い ただし，遊んでいる時間が多いと悪くなる↑HDDのspin downはこれから

9よみがえる↓オーバヘッド
よみがえる↓オッド
細粒度PGの課題(1)
フリーランチリ ランチ(1) 適切なスリープポリシーの設定


はない

スリープ時の電力モデル
オーバヘッド（B,D）よりも削減電力(E)が大きくなる
スリープ期間（損益分岐点）をBEP(Break Even Point)と定義
 短い期間でON/OFF繰返すと電力増大→PGせず、アクティブの方が良い
 BEPを下回るスリープ(BEPミス)が頻発
プ
すると電力ロスにつながる→適切なスリープポリシー、適切なスリ プポリシ 、コードの利用が必要

長いスパンでの観測、アクセスパタンなどの導入による局所化が考えられるが...

10

OSから見ると研究テーマはそれなりにあるOSから見ると研究テ
マはそれなりにある
どこに、何を、どう入れるか？
何を、どう隠ぺいするか？
1clock1～数clock
数～数10clock

数10～1KB以下

高速小容量
レジ
スタ

プロセスコンテキスト

数KB

L1

数10KB～MBキャッシュ L2
メモリ

数10～clock 数100M～GB

主記憶数100μs～数10ms
数100G～TB

2次記憶

緩和的フラッシュ
プロセス間の相性
L3
↓OS
メモリ管理
ファイルシステム

広域ネットワーク上のデータ
低速大容量メモリ管理
利用頻度の高いデ タと機械語で不揮発利用頻度の高いデータと機械語で不揮発記憶素子を利用(R ≫ W)
 書込み遅延はページングで隠ぺい、とか
書込み遅延はペ ジングで隠ぺい とか((さらに、そこにキャッシュを絡めるとか)、そを絡)
 SPMとの併用
 省電力キャッシュへの割当て制御
省電力キシの割当て制御などはすぐに思い くなどはすぐに思いつく

20120119ARC&ICDパネル

12

ファイルシステム
SSD、さらにはMRAM/FeRAM/PRAM向けのファイルシステムやデバイスドライバ
イ シ テムやデバイ ドライバ
 (携帯端末の)組込み機器では必須(データ管(携帯端末の)組込み機器では必須(デ タ管理)
- いずれサーバ系もSSD主体になる？
いずれサ バ系もSSD主体になる？
- DB、Webサーバとの連携
 OS研究としては、one level storeの復権も視野に入る(object管理含めて)
13

アーキテクチャとしてはSATA I/Fなどではなく、せめて主記憶の一種/として使ってみたい 内部には、Cache、TLBが考えうる内部には Cache TLBが考えうる
隠ぺいはハードが行うが、資源割当てはOSネタだろう←プロセススケジューリング
←プロセススケジュ
リング、メモリ割当てでメモリ割当てでシステム全体で時空間局所化こそが必要不可欠

20120119ARC&ICDパネル

14ただし...
新しいデバイスは入手が難しいし
 デバイスの基本データは自分たちでは無理 オーバヘッド：on/off、書込み、隠ぺい
オ バヘッド：on/off 書込み 隠ぺい デバイス特性
書込み時間、書込み上限、信頼性
 挙動：ユーザ、プログラムなど
挙動 ユ ザ プログラムなど「局所化」のために適切なユースケース、実行
時情報を活用15