As large amounts of garbage are generated in concurrent logic programs, it becomes necessary to salvage used memory frequently and efficiently, with a garbage collector. Another approach is to detect when a data structure becomes garbage and reuse it. In concurrent languages it is particularly difficult to determine when a data structure is garbage and suitable for destructive update. Dynamic schemes, such as reference counting, incur space and time overheads that can be unacceptable. In contrast, static-analysis techniques identify data objects whose storage may be reused. Information from static analysis can be used by the compiler in generating appropriate instructions for reuse, incurring tittle or no runtime overhead. In this paper we present a new static-analysis technique for reuse detection. We present empirical performance measurements comparing the new scheme against binary reference counting (MRB). It is shown that a simple static analysis can achieve most of the benefits of MRB and improve the execution time.
CITATION STYLE
Duvvuru, S., Sundararajan, R., Tick, E., Sastry, A. V. S., Hansen, L., & Zhong, X. (1992). A compile-time memory-reuse scheme for concurrent logic programs. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 637 LNCS, pp. 264–276). Springer Verlag. https://doi.org/10.1007/bfb0017195
Mendeley helps you to discover research relevant for your work.