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 m...
Parallel architectures are the way of the future, but are notoriously difficult to program. In addit...
Concurrent programming languages are becoming mandatory with the advent of multi-core processors. Tw...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
Most compilers focus on optimizing performance, often at the expense of memory, but efficient memory...
Multicore shared-memory architectures are becoming prevalent and bring many programming challenges. ...
Embedded systems demand concurrency for supporting simultaneous actions in their environment and par...
Programming concurrent systems is substantially more difficult than programming sequential systems, ...
Describing parallel hardware and software is difficult, especially in an embedded setting. Five year...
Concurrent programming languages are good for embedded systems because they match the parallelism of...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
With the advent of multicores, concurrent programming languages are become more prevelant. Data Race...
AbstractWe present an efficient memory management scheme for concurrent programming languages where ...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
technical reportCommunicating Sequential Processes (CSP) is a paradigm for communication and synchro...
Communication and synchronization stand as the dual bottlenecks in the performance of parallel syste...
Parallel architectures are the way of the future, but are notoriously difficult to program. In addit...
Concurrent programming languages are becoming mandatory with the advent of multi-core processors. Tw...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
Most compilers focus on optimizing performance, often at the expense of memory, but efficient memory...
Multicore shared-memory architectures are becoming prevalent and bring many programming challenges. ...
Embedded systems demand concurrency for supporting simultaneous actions in their environment and par...
Programming concurrent systems is substantially more difficult than programming sequential systems, ...
Describing parallel hardware and software is difficult, especially in an embedded setting. Five year...
Concurrent programming languages are good for embedded systems because they match the parallelism of...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
With the advent of multicores, concurrent programming languages are become more prevelant. Data Race...
AbstractWe present an efficient memory management scheme for concurrent programming languages where ...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
technical reportCommunicating Sequential Processes (CSP) is a paradigm for communication and synchro...
Communication and synchronization stand as the dual bottlenecks in the performance of parallel syste...
Parallel architectures are the way of the future, but are notoriously difficult to program. In addit...
Concurrent programming languages are becoming mandatory with the advent of multi-core processors. Tw...
Concurrent programming languages should be a good fit for embedded systems because they match the in...