Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Peter M. Musial

dblp:48/499 · DBLP profile ↗
← Back
18ranked-venue papers
1as first author
0since 2021 · last 2017
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 7 · 1 first-authorTheory of computation · 2

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Distributed systems · 74% Memory systems · 26%
Software engineering, system software, and programming languages
1 paper
Program verification · 100%

Topics — the 5 heaviest of 6, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Memory systems › shared memory
distributed shared memory
0.112009
Developing a Consistent Domain-Oriented Distributed Object Service · IEEE Trans. Parallel Distributed Syst. 2009
Distributed systems
replication
0.112009
Developing a Consistent Domain-Oriented Distributed Object Service · IEEE Trans. Parallel Distributed Syst. 2009
Distributed systems
formal specification
0.112007
A formal treatment of an abstract channel implementation using java sockets and TCP · PODC 2007
Distributed systems › formal specification
input/output automata
0.112007
A formal treatment of an abstract channel implementation using java sockets and TCP · PODC 2007
Distributed systems
fault tolerance
0.012009
Developing a Consistent Domain-Oriented Distributed Object Service · IEEE Trans. Parallel Distributed Syst. 2009

Methods — techniques the papers use, named apart from their topics

java socket · 0.1formal specification · 0.1TCP · 0.1formal algorithm development · 0.1
YearPublicationVenuePosition
2017 A coded shared atomic memory algorithm for message passing architectures
Viveck R. Cadambe, Nancy A. Lynch, Muriel Médard, Peter M. Musial
Distributed Comput.4
2014 A Coded Shared Atomic Memory Algorithm for Message Passing Architectures
abstract
This paper considers the communication and storage costs of emulating atomic (linearizable) multi-writer multi-reader shared memory in distributed message-passing systems. The paper contains two main contributions: 1) We present an atomic shared-memory emulation algorithm that we call Coded Atomic Storage (CAS). This algorithm uses erasure coding methods. In a storage system with 'N' servers that is resilient to 'f' server failures, we show that the communication cost of CAS is N/(N-2f). The storage cost of CAS is unbounded. 2) We present a variant of CAS known as CAS with Garbage Collection (CASGC). The CASGC algorithm is parametrized by an integer 'd' and has a bounded storage cost. We show that in every execution where the number of write operations that are concurrent with a read operation is no bigger than d, the CASGC algorithm with parameter d satisfies atomicity and liveness. We explicitly characterize the storage cost of CASGC, and show that it has the same communication cost as CAS.
Viveck R. Cadambe, Nancy A. Lynch, Muriel Médard, Peter M. Musial
NCA4
2013 Tempo-Toolkit: Tempo to Java Translation Module
abstract
TIOA is a formal language for modeling distributed, concurrent, and timed/untimed systems as collections of interacting state machines, called Timed Input/Output Automata. TIOA provide natural mathematical notations for describing systems, their intended properties, and the relationships between their descriptions at varying levels of abstraction. The Tempo toolkit is an implementation of the TIOA language and a suite of tools that supports a range of validation methods for description of systems and their properties, including static analysis, simulation, and machine-checked proofs. The tools are implemented as Eclipse plugins. In this paper we introduce a new plugin of the toolkit, the Tempo-to-Java compiler, which automatically translates high level Tempo specification into executable Java code for various distributed platforms. The translation process is verified to preserve the formal properties of the source specification, hence leading to generated code which is correct by construction.
Chryssis Georgiou, Peter M. Musial, Christos Ploutarchou
NCA2
2010 On the Automated Implementation of Time-Based Paxos Using the IOA Compiler
Chryssis Georgiou, Procopis Hadjiprocopiou, Peter M. Musial
OPODIS3
2009 Evaluating a Dependable Sharable Atomic Data Service on a Planetary-Scale Network
Chryssis Georgiou, Nikolas Hadjiprocopiou, Peter M. Musial
ICA3PP3
2009 On the Efficiency of Atomic Multi-reader, Multi-writer Distributed Memory
Burkhard Englert, Chryssis Georgiou, Peter M. Musial, Nicolas C. Nicolaou, Alexander A. Schwarzmann
OPODIS3
2009 Reconfigurable distributed storage for dynamic networks
Gregory V. Chockler, Seth Gilbert, Vincent Gramoli, Peter M. Musial, Alexander A. Schwarzmann
J. Parallel Distributed Comput.4
2009 Developing a Consistent Domain-Oriented Distributed Object Service
abstract
This paper presents a new algorithm for a reconfigurable distributed domain-oriented atomic object service, called DO-RAMBO, which stands for Domain-Oriented Reconfigurable Atomic Memory for Basic Objects. This service is suitable for inclusion as a middleware system service for distributed applications requiring atomic read/write data. The implementation substantially extends and refines the abstract RAMBO algorithm of Lynch and Shvartsman that supports individual atomic objects. In this paper, domains are introduced to allow the users to group related atomic objects. The new implementation manages configurations on the basis of domains, significantly improving the utility and the performance of the resulting service. DO-RAMBO guarantees consistency under asynchrony, message loss, node crashes, new node arrivals, and node departures. We present the formal algorithm development for DO-RAMBO and give analytical and empirical results that illustrate the benefit of the new approach.
Chryssis Georgiou, Peter M. Musial, Alexander A. Schwarzmann
IEEE Trans. Parallel Distributed Syst.2
2008 Spontaneous, Self-Sampling Quorum Systems for Ad Hoc Networks
abstract
Quorum systems-collections of sets with pairwise nonempty intersections-are used in distributed settings to implement services such as consensus and consistent memory. Quorums have been substantially studied in static settings, however the design and analysis of quorum-based distributed services in resource-limited ad hoc networks is a relatively unexplored area. The pioneering work of Chockler, Gilbert, and Patt-Shamir considers such networks and proposes an implementation of probabilistic quorum systems with per-node communication bit complexity of O(log2n), where n is the number of nodes. The authors assumes a priori knowledge of node failure probability p, where 0 ¿ p2n). We demonstrate the utility of our construction by presenting a single-writer, multi-reader algorithm that uses our probabilistic quorums to implement atomic objects in ad hoc networks, where consistency is guaranteed with high probability. We include simulation results illustrating the high probability guarantee for our atomic memory service.
Kishori M. Konwar, Peter M. Musial, Alexander A. Schwarzmann
ISPDC2
2008 An Abstract Channel Specification and an Algorithm Implementing It Using Java Sockets
abstract
Abstract models and specifications can be used in the design of distributed applications to formally reason about their safety properties. However, the benefits of using formal methods are often negated by the ad hoc process of mapping the semantics of an abstract specification to algorithms designed to be executed on target distributed platforms. The challenge of formally specifying communication channels and correctly implementing them as algorithms that use realistic distributed system services is the focus of this paper. This work provides an original formal specification of an abstract asynchronous communication channel with support for dynamic creation and tear down of links between participating network nodes, and its implementation as an algorithm using Java sockets. The specification and the algorithm are expressed using the Input/Output Automata formalism, and it is proved that the algorithm correctly implements the specification, viz. that any externally observable behavior (trace) of the algorithm has a corresponding behavior of the specification. The approach presented here can be used to implement algorithms for dynamic systems, where communicating nodes may join, leave, and experience delays. The result is also of direct benefit to automated code generation, such as that implemented within the Input/Output Automata Toolkit at MIT.
Chryssis Georgiou, Peter M. Musial, Alexander A. Schwarzmann, Elaine L. Sonderegger
NCA2
2007 Implementing Atomic Data through Indirect Learning in Dynamic Networks
abstract
Developing middleware services for dynamic distributed systems, e.g., ad-hoc networks, is a challenging task given that such services deal with dynamically changing membership and asynchronous communication. Algorithms developed for static settings are often not usable in such settings because they rely on (logical) all-to-all node connectivity through routing protocols, which may be unfeasible or prohibitively expensive to implement in highly dynamic settings. This paper explores the indirect learning, via periodic gossip, approach to information dissemination within a dynamic, distributed data service implementing atomic read/write memory service. The indirect learning scheme is used to improve the liveness of the service in the settings with uncertain connectivity. The service is formally proved to guarantee atomicity in all executions. Conditional performance analysis of the new service is presented, where this analysis has the potential of being generalized to other similar dynamic algorithms. Under the assumption that the network is connected, and assuming reasonable timing conditions, the bounds on the duration of read/write operations of the new service are calculated. Finally, the paper proposes a deployment strategy where indirect learning leads to an improvement in communication costs relative to a previous solution that assumes all-to-all connectivity.
Kishori M. Konwar, Peter M. Musial, Nicolas C. Nicolaou, Alexander A. Schwarzmann
NCA2
2007 A formal treatment of an abstract channel implementation using java sockets and TCP
abstract
Abstract models and specifications can be used in the design of distributed applications to formally reason about their safety properties. However, the benefits of using formal methods are offset by the challenging process of mapping the functionality of an abstract specification to the low-level executable code for target distributed platforms. Formal specification and practical implementation of communication channels is one such challenge. This work provides the first formal specification of an abstract asynchronous communication channel with support for dynamic creation and tear down of communication links between participating network nodes, and its implementation using Java sockets and TCP. The specifications are formulated using Input/Output Automata formalism, and it is proved that the resulting implementation preserves the safety properties of the abstract channel. The approach presented here can be used to implement algorithms for dynamic systems, where communicating nodes may join, leave, and experience arbitrary delays, and it can directly benefit automated code generation.
Chryssis Georgiou, Peter M. Musial, Alexander A. Schwarzmann, Elaine L. Sonderegger
PODC2
2007 Long-lived Rambo: Trading knowledge for communication
Chryssis Georgiou, Peter M. Musial, Alexander A. Schwarzmann
Theor. Comput. Sci.2
2005 Explicit Combinatorial Structures for Cooperative Distributed Algorithms
abstract
Cooperation in distributed settings often involves activities that must be performed at least once by the participating processors. When processor failures or delays occur, it becomes unavoidable that some tasks are done redundantly. To make efficient use of the available processors, several distributed algorithms schedule the activities of the processors in terms of permutations of tasks that need to be performed at least once. This paper presents the first explicit practical deterministic construction of sets of permutations with certain combinatorial properties that immediately make practical several deterministic distributed algorithms. These algorithms solve a variety of problems, for example, cooperation in shared-memory and message-passing settings, and the gossip problem. Prior to this work, the most efficient algorithms for some of these problems were primarily of theoretical interest - they relied on permutations that are known to exist, but very expensive to construct, with the cost of construction being at least exponential in the size of the permutations. In this paper, the explicitly constructed permutations are ultimately used directly to produce practical instances of several classes of efficient deterministic algorithms. Most importantly, for all of these algorithms, the schedule construction cost is reduced from exponential to polynomial, at the expense of slight detuning, at most polylogarithmic, of the efficiency of these algorithms
Dariusz R. Kowalski, Peter M. Musial, Alexander A. Schwarzmann
ICDCS2
2005 Developing a Consistent Domain-Oriented Distributed Object Service
abstract
This paper presents a new algorithm for a reconfigurable distributed domain-oriented atomic object service, called DO-RAMBO, which stands for domain-oriented reconfigurable atomic memory for basic objects. This service is suitable for inclusion as a middleware system service for distributed applications requiring atomic read/write data. The implementation substantially extends and refines the abstract RAMBO algorithm of Lynch and Shvartsman that supports individual atomic objects. In this paper domains are introduced to allow the users to group related atomic objects. The new implementation manages configurations on the basis of domains, significantly improving the utility and the performance of the resulting service. DO-RAMBO guarantees consistency under asynchrony, message loss, node crashes, new node arrivals, and node departures. We present the formal algorithm development for DO-RAMBO and give analytical and preliminary empirical results that illustrate the benefit of the new approach
Chryssis Georgiou, Peter M. Musial, Alexander A. Schwarzmann
NCA2
2005 Reconfigurable Distributed Storage for Dynamic Networks
Gregory V. Chockler, Seth Gilbert, Vincent Gramoli, Peter M. Musial, Alexander A. Schwarzmann
OPODIS4
2004 Implementing a Reconfigurable Atomic Memory Service for Dynamic Networks
abstract
Summary form only given. Transforming abstract algorithm specifications into executable code is an error-prone process in the absence of sophisticated compilers that can automatically translate such specifications into the target distributed system. We present a framework that was developed for translating algorithms specified as Input/Output Automata (IOA) to distributed programs. The framework consists of a methodology that guides the software development process and a core set of functions needed in target implementations that reduce unnecessary software development. The systems developed using this methodology preserve the modularity of the original specifications, making it easier to track refinements and effect optimizations. As a proof of concept, this work also presents a distributed implementation of a reconfigurable atomic memory service for dynamic networks (RAMBO). This service emulates atomic read/write shared objects in the dynamic setting where processors can arbitrarily crash, or join and leave the computation. The algorithm tolerates processor crashes and message loss and guarantees atomicity for arbitrary patterns of asynchrony and failure. The algorithm implementing the service is given in terms of IOA. An important consideration in formulating RAMBO was that it could be employed as a building block in real systems. Following a formal presentation of RAMBO algorithm, this work describes an optimized implementation that was developed using the methodology presented here. The system is implemented in Java and runs on a network of workstations. Empirical data illustrates the behavior of the system.
Peter M. Musial, Alexander A. Schwarzmann
IPDPS1
2004 Long-Lived Rambo: Trading Knowledge for Communication
Chryssis Georgiou, Peter M. Musial, Alexander A. Schwarzmann
SIROCCO2