Generative communication in Linda
ACM Transactions on Programming Languages and Systems (TOPLAS)
Coordination models and languages as software integrators
ACM Computing Surveys (CSUR)
Why interaction is more powerful than algorithms
Communications of the ACM
The ProSet-Linda approach to prototyping parallel systems
Journal of Systems and Software
Linda implementations in Java for concurrent systems: Research Articles
Concurrency and Computation: Practice & Experience
Towards the measurement of tuple space performance
ACM SIGMETRICS Performance Evaluation Review - Special issue on the First ACM SIGMETRICS Workshop on Large Scale Network Inference (LSNI 2005)
Computer
Thousand core chips: a technology perspective
Proceedings of the 44th annual Design Automation Conference
Parallel computing on any desktop
Communications of the ACM - ACM's plan to go online first
Statistically rigorous java performance evaluation
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
The LighTS tuple space framework and its customization for context-aware applications
Web Intelligence and Agent Systems
Using UNICORE and WS-BPEL for scientific workflow execution in grid environments
Euro-Par'09 Proceedings of the 2009 international conference on Parallel processing
A coordination-based model-driven method for parallel application development
MODELS'09 Proceedings of the 2009 international conference on Models in Software Engineering
Hi-index | 0.00 |
Multi-core processors require programmers to exploit concurrency in software as far as possible. Unfortunately, our current concurrency abstractions make multi-core programming harder than necessary because we have to reduce unintended non-determinism on a very low level of abstraction, for instance via synchronisation mechanisms. In this experience paper we analyse if space-based systems can mitigate multi-core programming in the Java programming language and present the Procol programming model that introduces the space-based choreography of active components, which internally orchestrate fine-grained workflow activities. The main contributions are (1) the Procol programming model, (2) benchmark results of the scalability of different tuple space implementation techniques that we evaluated on different multi-core architectures, (3) benchmark results of the scalability of two equivalent Mandelbrot applications for best-case measurements -- one implemented with the standard Java thread model, one with our Procol programming model. The conclusions drawn from these experiments are (1) tuple space data structures that scale reasonably well can be provided, (2) the performance overhead that Procol imposes is at least for the considered application a reasonable trade-off for the ease of programming provided for multi-core architectures.