世代別Mostly-Copying GCのRuby VMへの実装に向けて
スポンサーリンク
概要
- 論文の詳細を見る
近年,Web アプリケーションをはじめとする Ruby による大規模アプリケーションの開発が行われるようになってきている.大規模なアプリケーションの特徴として,大量のデータを扱い長時間動作し続けるという特徴があげられる.既存の Ruby 処理系は保守的マークスイープ方式でごみ集め (GC) をしているが,このような特徴を持つアプリケーションでは,世代別コピー GC で GC の時間を短縮できることが知られている.しかし,Ruby 処理系には保守的 GC を前提に作られている部分があり,移動できないオブジェクトがあるため,通常のコピー GC は実現できない.そこで,移動できないオブジェクトが存在しても,コピー GC を実現できる Mostly-Copying GC を用いることにした.本研究では,世代別 Mostly-Copying GC の実装による GC 時間の短縮を目標として,Ruby1.9 の VM に Mostly-Copying GC の実装を行い,Ruby on Rails 組み込みの Web サーバなどを対象に移動できないオブジェクトの数やその寿命など世代別 GC の設計に必要なデータ収集を行った.その結果,移動できないオブジェクトの割合は少なくないが,それらは長寿命であるという傾向が分かった.本発表では,これらのデータを基に世代別 Mostly-Copying GC の実装方針と設計について述べる.
- 2010-03-16
著者
-
岩崎 英哉
電気通信大学情報工学科
-
岩崎 英哉
電気通信大学
-
永原 治
電気通信大学大学院電気通信学研究科情報工学専攻
-
鵜川 始陽
電気通信大学情報工学科
-
岩崎 英哉
電気通信大学大学院情報理工学研究科
-
鵜川 始陽
電気通信大学大学院情報理工学研究科
-
鵜川 始陽
電気通信大学
関連論文
- 実行コンテキストに応じたポリシー指定が可能なサンドボックス(セキュリティ)
- カーネルレベルルートキットの検知システムの構築(セッション3:高セキュア・高信頼化)
- なぜソフトウェア論文を書くのは難しい(と感じる)のか
- 特集「ソフトウェア論文」の編集にあたって
- 特集「ソフトウェア論文」の編集にあたって(ソフトウェア論文)
- 4.並列計算パターン(スケルトン)による並列プログラミング(マルチコアを活かすお手軽並列プログラミング)
- 世代別Mostly-Copying GCのRuby VMへの実装と評価
- 世代別Mostly-Copying GCのRuby VMへの実装に向けて
- Ruby における Mostly-Copying GC の実装
- ブラウザで動作するウェブアプリケーションのソースコード隠蔽機構
- サーバ/クライアント自動分割を備えたWebフレームワークの設計と実装
- Haskellプログラムの開発を支援するGHCiデバッガフロントエンド
- 図表的文書の記述モデルAFAL
- プログラムの更新を可能とするCheckpoint/Restart機構
- メソッド実行委託を用いたRubyプロセスの負荷分散ライブラリ
- 純関数型言語の処理系における効率的な枝刈り機構の実装
- 特集「最新コンパイラ技術とCOINSによる実践」の編集にあたって
- 非同期処理のためのJavaScriptマルチスレッドフレームワーク
- リクエスト待機間隔を考慮したウェブサーバのkeep-alive時間の自動設定
- 要求駆動計算における要求粒度調節機構(プログラミング言語の設計)
- ユーザ入力の構文木解析によるSQLインジェクション攻撃防御法
- 要求の粒度が調節可能な遅延評価機構
- マルチプロセッサ Unix マシン上における並列言語処理系の実装法の検討
- プログラム融合変換の実用的有効性の検証
- 枝刈り機構とメモ化機構をもつ言語
- 関係代数によるUNITYループの意味づけ
- プログラミング研究会(研究会千夜一夜)
- Robin Milner : A Proposal for Standard ML(20世紀の名著名論)
- ストリームベースXML処理を支援するJavaクラス生成器
- プログラムの更新を可能とする Checkpoint/Restart 機構
- スケルトン並列プログラミング
- 最適化機構を持つC++並列スケルトンライブラリ(サイバー増大ページ論文概要,サイバー増大号)
- 需要変化に動的に対応する伸縮自在サーバ群の基本機構(コンピュータシステム)
- ファイル移送に基づく分散ファイルシステムの設計と実装
- 特定のフォーマットに依存しない文書処理系の設計と実装
- P2P型ファイル検索における高スループット・ピアの自動選択機構(インターネットとセキュリティ)
- モバイルコード技術によるアプリケーション層プロトコルのユーザ透過な配布機構(ソフトウェアシステム)
- D.E.Knuth, J.H.Morris, V.R.Pratt : Fast Pattern Matching in Strings(20世紀の名著名論)
- 初心者入門用言語「若葉」の言語仕様と処理系の実装
- 論理的関係に基づくプレゼンテーションスライド作成システムの設計と開発
- 論理的関係に基づくプレゼンテーションスライド作成システムの設計と開発
- 5E-8 PostScriptインタプリタを利用したプレゼンテーションシステム
- 初心者入門用言語"若葉"によるプログラミング学習環境の設計と実現
- 第三言語を介した対訳辞書の作成(並列処理)
- 蓄積引数を持つ関数プログラムの融合変換
- 関数プログラムのプロモーション変換のための二手法の関係
- 平面上の矩形和の最大値問題の並列プログラムの導出
- 排他制御機構を選択できるクリティカルセクションの設計と実装
- Catamorphismに基づく関数プログラムの変換
- Catamorphismに基づく関数プログラムの変換
- Lispにおける並列動作の記述と実現
- Glasgow Haskell Compilerにおける再帰的データ構造のための遅延オブジェクトの再利用 (プログラミング Vol.5 No.2)
- 組込み Java の実時間ごみ集め
- ビットマップマーキングを利用したマークコンパクトごみ集めのJikes RVMへの実装
- 「情報処理学会論文誌 : プログラミング」の編集について
- Ruby on Railsにおけるテストケース自動生成の提案と実装
- 低優先度処理を指定可能なリアルタイム処理向けI/Oスケジューラ