next up previous
Next: GC 処理に要する時間. Up: KLIC 第3版: Previous: KLIC 第3版:

はじめに.

KLIC [1] は可搬性と効率性の両立を目標に構築さ れた,並列論理型言語 KL1 の並列処理系である. KLIC では,自動メモリ管理を行っておりガーベジコレ クション(GC)の処理時間は,通常,プログラム実行時 間全体のうち無視出来ない時間を占める.従って,GC の性能は処理系の性能を左右する大きな要因の一つ である.

現在のKLIC処理系は,比較的短期間だけ必要とする ような様々な制御用のデータ構造なども,プログラム中 から明示的に利用する通常のデータと同じヒープ領域 に割り付ける設計となっている.これは処理系の構造を 単純にする効果を上げている反面,短寿命のデータが 非常に多くなり,GC機構に大きな負担となっている.

そこで,本研究では,様々なデータ構造を割り付ける ヒープ領域を,比較的長時間保持されているデータを 格納する領域(旧世代領域)と,最近割り付けたデータ を格納する領域(新世代領域)とに分割する世代GC方 式を KLIC に導入し,その結果,オリジナルの KLIC と比べプログラムの実行時間が数%〜20%程度短縮 したことを示した.



next up previous
Next: GC 処理に要する時間. Up: KLIC 第3版: Previous: KLIC 第3版:



www-admin@icot.or.jp