A Concurrent Real-time Garbage Collector
スポンサーリンク
概要
- 論文の詳細を見る
In this presentation, we report on the microprogramming implementation and its evaluation of a concurrent real-time garbage collector (GC) for the rea-time symbolic processing system TAO/SILENT. Our real-time GC is implemented as a set of GC processes which run concurrently with other Lisp processes. It is based upon a sort of well-known incremental update algorithm, and it brings in only a little overhead to Lisp primitives. We embedded a scheduling mechanism that is specific to GC process scheduling, since it is indispensable to devise a good cooperation scheme between the operating system kernel and concurrent GC. We also developed a good deal of tiny techniques to make the GC processes as swift as possible. As a result, our concurrent GC achieves a very small response delay for external events, that is, when an interrupt event takes place, the corresponding urgent Lisp process can wake up in less than 131 microseconds for the worst case where more than ten thousand memory-consuming Lisp processes are concurrently running, and surely in less than 50 microseconds if those Lisp processes are made with real-time consciousness. These figures are more than a hundred times as good as most of those appeared in the literature. Our GC can be said "transparent" in the sense that real-time processes would not be aware of the GC whether it runs or not, at least with respect to response delay.
- 一般社団法人情報処理学会の論文
- 2003-12-15
著者
-
Yoshida Masaharu
Ntt-it
-
Takeuchi Ikuo
The University Of Electro-communications
-
Amagai Yoshiji
Ntt
-
YAMAZAKI KENICH
NTT DoCoMo