21 research outputs found
Guppie: A Coordination Framework for Parallel Processing Using Shared Memory Featuring A Master-Worker Relationship
Most programs can be parallelized to some extent. The processing power available in computers today makes parallel computing more desirable and attainable than ever before. Many machines today have multiple processors or multiple processing cores making parallel computing more available locally, as well as over a network. In order for parallel applications to be written, they require a computing language, such as C++, and a coordination language (or library), such as Linda. This research involves the creation and implementation of a coordination framework, Guppie, which is easy to use, similar to Linda, but provides more efficiency when dealing with large amounts of messages and data. Greater efficiency can be achieved in coarse-grained parallel computing through the use of shared memory managed through a master-worker relationship
Analysis and conception of tuple spaces in the eye of scalability
Applications in the emerging fields of eCommerce and
Ubiquitous Computing are composed of heterogenous systems that
have been designed separately.
Hence, these systems loosely coupled and require a coordination
mechanism that is able to gap spatial and temporal remoteness.
The use of tuple spaces for data-driven coordination of these
systems has been proposed in the past. In addition, applications
of eCommerce and Ubiquitous Computing are not bound to a
predefined size, so that the underlying coordination
mechanism has to be highly scalable. However, it seems to be
difficult to conceive a scalable tuple space.
This report is an English version of the author\u27s diploma
thesis. It comprises the chapter two, three, four, and five. By
this means, the design and the implementation of the proposed
tuple space is not part of this report
Проблеми координації в розподілених обчисленнях
В роботі проаналізовані дві основні моделі координації в розподілених обчисленнях: data-driven (стан обчислень на будь-який момент часу визначається даними, що отримуються або передаються та фактичною конфігурацію скоординованих компонентів) та control-driven (в основу координації покладено спільний простір даних, який є асоціативною структурою даних). Крім виділених стилістичних відмінностей між цими координаційними моделями, які впливають на ступінь розділення обчислювальних та координаційних частин, зазначено і різне застосування. Приведений короткий опис координаційної класичної моделі Linda та її імплементацій, показує простоту привнесення координаційних механізмів до будь-якої мови програмування
A Privacy Type System for Context-aware Mobile Ambients
Thanks to the advances in technologies, ubiquitous computing (ubicomp) is developing fast with the proliferation of smart devices such as smart phones and tablet computers. However, privacy is an important concern in ubicomp; unless users are confident enough that their privacy is protected, many will be deterred from using such systems. This paper proposes a privacy type system that controls the behaviour of concurrent, context-aware and mobile processes to ensure that private information are not accidentally disclosed. We prove the subject reduction property, which guarantees that a well-typed process is safe and cannot disclose private information to an unauthorised party
The Cost and Benefits of Coordination Programming: Two Case Studies in Concurrent Collection and S-Net
Electronic version of an article published as Pavel Zaichenkov et al, Parallel Processing Letters, Vol. 26 (3), 2016, 24 pages. DOI: http://www.worldscientific.com/doi/abs/10.1142/S0129626416500110 © 2016 World Scientific Publishing Company http://www.worldscientific.com/worldscinet/pplThis is an evaluation study of the expressiveness provided and the performance delivered by the coordination language S-NET in comparison to Intel’s Concurrent Collections (CnC). An S-NET application is a network of black-box compute components connected through anonymous data streams, with the standard input and output streams linking the application to the environment. Our case study is based on two applications: a face detection algorithm implemented as a pipeline of feature classifiers and a numerical algorithm from the linear algebra domain, namely Cholesky decomposition. The selected applications are representative and have been selected by Intel researchers as evaluation testbeds for CnC in the past. We implement various versions of both algorithms in S-NET and compare them with equivalent CnC implementations, both with and without tuning, previously published by the CnC community. Our experiments on a large-scale server system demonstrate that S-Net delivers very similar scalability and absolute performance on the studied examples as tuned CnC codes do, even without specific tuning. At the same time, S-Net does achieve a much more complete separation of concerns between compute and coordination layers than CnC even intends to.Peer reviewedFinal Accepted Versio
JOLTS : checkpointing and coordination in grid systems
The need for increased computational power is growing faster than our ability to produce faster computers. Already researchers are proposing systems that require peta-flop capable super computers, a far cry from what is currently capable. To meet such high computational requirements, networks of computers will be required. While it is possible to network together computers to achieve a single task, making that network more flexible to handle a multitude of different tasks is the promise of grid computing.
Grid systems are slowly appearing that are designed to run many independent tasks, and provide the ability for programs to migrate between machines before completion. However, these systems lack coordination capabilities. Many grid systems/environments allow multiple tasks to communicate/coordinate with each other based on various paradigms, but don't provide migration capabilities.
This thesis proposes a system, called JOLTS, that attempts to fill a gap by providing both checkpointing and coordination capabilities. The coordination model offered by JOLTS is based on the Objective Linda coordination language, with some additions. This thesis will show that the object space model is an effective form of coordination and communication, and can effectively be combined with checkpointing capabilities inside the same grid system
JOLTS : checkpointing and coordination in grid systems
The need for increased computational power is growing faster than our ability to produce faster computers. Already researchers are proposing systems that require peta-flop capable super computers, a far cry from what is currently capable. To meet such high computational requirements, networks of computers will be required. While it is possible to network together computers to achieve a single task, making that network more flexible to handle a multitude of different tasks is the promise of grid computing.
Grid systems are slowly appearing that are designed to run many independent tasks, and provide the ability for programs to migrate between machines before completion. However, these systems lack coordination capabilities. Many grid systems/environments allow multiple tasks to communicate/coordinate with each other based on various paradigms, but don't provide migration capabilities.
This thesis proposes a system, called JOLTS, that attempts to fill a gap by providing both checkpointing and coordination capabilities. The coordination model offered by JOLTS is based on the Objective Linda coordination language, with some additions. This thesis will show that the object space model is an effective form of coordination and communication, and can effectively be combined with checkpointing capabilities inside the same grid system
LIME: A Coordination Middleware Supporting Mobility of Agents and Hosts
LIME (Linda in a Mobile Environment) is a middleware supporting the development of applications that exhibit physical mobility of hosts, logical mobility of agents, or both. LIME adopts a coordination perspective inspired by work on the Linda model. The context for computation, represented in Linda by a globally accessible, persistent tuple space, is refined in LIME to transient sharing of identically-named tuple spaces carried by individual mobile units. Tuple spaces are also extended with a notion of location and programs are given the ability to react to specified states. The resulting model provides a minimalist set of abstractions that promise to facilitate rapid and dependable development of mobile applications. In this paper, we illustrate the model underlying LIME, provide a formal semantic characterization for the operations it makes available to the application developer, present its current design and implementation, and discuss lessons learned in developing applications that involve physical mobility