Buffer Sharing in CSP-like Programs
Most compilers focus on optimizing performance, often at the
expense of memory, but efficient memory use can be just as important
in constrained environments such as embedded systems.
In this paper, we present a memory reduction technique for the
deterministic concurrent programming language SHIM. We focus
on reducing memory consumption by sharing buffers among the
tasks, which use them to communicate using CSP-style rendezvous.
We determine pairs of buffers that can never be in use simultaneously
and use a shared region of memory for each pair.
Our technique produces a static abstraction of a SHIM program’s
dynamic behavior, which we then analyze to find buffers
that can share memory. Experimentally, we find our technique runs
quickly on modest-sized programs and often reduces memory requirements
- vasudevan2009buffer.pdf application/pdf 102 KB Download File
Also Published In
- 2009 7th IEEE/ACM International Conference on Formal Methods and Models for Codesign (Memocode 2009)
More About This Work
- Academic Units
- Computer Science
- Published Here
- August 23, 2011