A compile-time memory-reuse scheme for concurrent logic programs

2Citations
Citations of this article
5Readers
Mendeley users who have this article in their library.
Get full text

Abstract

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.

Cite

CITATION STYLE

APA

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

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free