Some message-passing concurrent systems, such as occam 2, prohibit aliasing of data objects. Communicated data must thus be copied, which can be time-intensive for large data packets such as video frames. We introduce automatic mobility, a compiler optimisation that performs communications by reference and deduces when these communications can be performed without copying. We discuss bounds for speed-up and memory use, and benchmark the automatic mobility optimisation. We show that in the best case it can transform an operation from being linear with respect to packet size into constant-time
We present an efficient memory management scheme for concurrent programming languages where communic...
By optimizing data layout at run-time, we can potentially en-hance the performance of caches by acti...
A software solution consists of multiple autonomous computations (i.e., execution threads) that exec...
Abstract. Some message-passing concurrent systems, such as occam 2, prohibit alias-ing of data objec...
Aliasing problems are a major source for error in traditional imperative languages (such as C) and m...
This paper introduces occam-pi, an efficient and safe binding of key elements from Hoare's CSP and M...
Continuing research on language design, compilation and kernel support for highly dynamic concurrent...
AbstractWe present an efficient memory management scheme for concurrent programming languages where ...
Abstract. The message-passing paradigm is now widely accepted and used mainly for inter-process comm...
CSP processes have a static view of their environment -- a fixed set of events through which they sy...
This paper explores a process-oriented approach to complex systems design, using massive fine-graine...
In this paper, we take the extreme view that every line of code is potentially mobile, i.e., may be ...
Abstract. Parallelizing a sequential algorithm—i.e., manually or automatically converting it into an...
Programming for parallel architectures that do not have a shared address space is extremely difficul...
This thesis is concerned with support at all levels for building highly concurrent and dynamic paral...
We present an efficient memory management scheme for concurrent programming languages where communic...
By optimizing data layout at run-time, we can potentially en-hance the performance of caches by acti...
A software solution consists of multiple autonomous computations (i.e., execution threads) that exec...
Abstract. Some message-passing concurrent systems, such as occam 2, prohibit alias-ing of data objec...
Aliasing problems are a major source for error in traditional imperative languages (such as C) and m...
This paper introduces occam-pi, an efficient and safe binding of key elements from Hoare's CSP and M...
Continuing research on language design, compilation and kernel support for highly dynamic concurrent...
AbstractWe present an efficient memory management scheme for concurrent programming languages where ...
Abstract. The message-passing paradigm is now widely accepted and used mainly for inter-process comm...
CSP processes have a static view of their environment -- a fixed set of events through which they sy...
This paper explores a process-oriented approach to complex systems design, using massive fine-graine...
In this paper, we take the extreme view that every line of code is potentially mobile, i.e., may be ...
Abstract. Parallelizing a sequential algorithm—i.e., manually or automatically converting it into an...
Programming for parallel architectures that do not have a shared address space is extremely difficul...
This thesis is concerned with support at all levels for building highly concurrent and dynamic paral...
We present an efficient memory management scheme for concurrent programming languages where communic...
By optimizing data layout at run-time, we can potentially en-hance the performance of caches by acti...
A software solution consists of multiple autonomous computations (i.e., execution threads) that exec...