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

TAKAO:高速不揮発メモリ構成下における永続データのためのScalaライブラリ

N/A
N/A
Protected

Academic year: 2021

シェア "TAKAO:高速不揮発メモリ構成下における永続データのためのScalaライブラリ"

Copied!
1
0
0

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

全文

(1)情報処理学会論文誌. プログラミング. Vol.9 No.2 5 (May 2016). 発表概要. TAKAO:高速不揮発メモリ構成下における 永続データのための Scala ライブラリ 明畠 利樹1. 山崎 憲一1. 2015年11月6日発表. 近年,高速不揮発性メモリ(NVM)の性能が向上しており,将来的には従来の DRAM と同等のアクセ ス速度になると考えられている.本発表では,既存のハードディスクと DRAM がすべて NVM に置き換 えられることを想定する.その場合,メモリ上のデータはそのまま保持されるが,それだけではデータの 永続化は実現できない.本発表で提案するライブラリ TAKAO は,NVM 上での永続データのためのライ ブラリであり,2 つの機能を持つ.1 つはメモリ上のオブジェクトにグローバルな識別子を付与すること で,そのデータを次の実行時に再利用可能にする機能である.もう 1 つは,電源喪失などの障害時でも データの一貫性を保つ機能である.TAKAO は,関数型言語 Scala 上で提供される.関数型言語のもつ参 照透過性のため,基本的にデータが書き換えられなくなり,データの一貫性を保つことが容易となる.ま た,副作用をともなう操作に対しては,原子的更新の機能を導入する.Scala は Java 仮想マシン(JVM) 上で動作するが,JVM を NVM 上に実装するには次の課題がある.1 つは,永続化データの選別である. これには永続化データとその内部表現に必要なデータだけを残し,他を回収するための Recovery GC を実 装した.もう 1 つは,原子的更新の実装である.これにはソフトウェアトランザクショナルメモリと類似 の技術を用いた.本発表では提案するライブラリ TAKAO の設計と詳細な実装について述べたのち,性能 を評価する.. TAKAO: A Scala Library for Persistent Data on Non-volataile Memory Based Systems Toshiki Akehata1. Kenichi Yamazaki1. Presented: November 6, 2015. The performance of high-speed NVM (Non-Volatile Memory) is improved, and its access speed will be the same as DRAM in the near future. In this paper, we assume a computer architecture in which the main memory and the hard disk are replaced by the NVM. Although the NVM inherently keeps the written data ever, it is not enough for data persistence. TAKAO, proposed in this paper, is a library for persistent data on NVM. It provides a global naming function to a persistent data, using which the data can be accessed in the subsequent execution. TAKAO also provides a data protection mechanism to keep data consistency even when a power failure occurs. TAKAO is provided on top of a functional programming language Scala. Since Scala has a referential transparency which means that data is not updated destructively, it is easy to keep data consistency for persistent data. We introduce an atomic update mechanism for data modification as well. Scala runs on JVM (Java Virtual Machine), and the JVM has technical issues to be implemented on NVM. One is how to separate persistent data with others. We propose a recovery GC which marks necessary internal data for persistent data and collects useless data. As for another issue, an atomic update implementation, we use a similar technique as software transactional memory. In this paper, we describe the design and detailed implementation of TAKAO, and finally show the performance evaluation.. 1. 芝浦工業大学大学院理工学研究科 Shibaura Institute of Technology, Graduate School of Engineering and Science, Minato, Tokyo 108–8548, Japan. c 2016 Information Processing Society of Japan . 5.

(2)

参照

関連したドキュメント

以上のことから,心情の発現の機能を「創造的感性」による宗獅勺感情の表現であると

既存の尺度の構成概念をほぼ網羅する多面的な評価が可能と考えられた。SFS‑Yと既存の

式目おいて「清十即ついぜん」は伝統的な流れの中にあり、その ㈲

および皮膚性状の変化がみられる患者においては,コ.. 動性クリーゼ補助診断に利用できると述べている。本 症 例 に お け る ChE/Alb 比 は 入 院 時 に 2.4 と 低 値

定可能性は大前提とした上で、どの程度の時間で、どの程度のメモリを用いれば計

はじめに

自発的な文の生成の場合には、何らかの方法で numeration formation が 行われて、Lexicon の中の語彙から numeration

優越的地位の濫用は︑契約の不完備性に関する問題であり︑契約の不完備性が情報の不完全性によると考えれば︑