Ranganath Atreya’s research while affiliated with The University of Texas at Dallas and other places

What is this page?


This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.

Publications (6)


A Quorum-Based Group Mutual Exclusion Algorithm for a Distributed System with Dynamic Group Set
  • Article
  • Full-text available

November 2007

·

403 Reads

·

42 Citations

IEEE Transactions on Parallel and Distributed Systems

Ranganath Atreya

·

·

The group mutual exclusion problem extends the traditional mutual exclusion problem by associating a type (or a group) with each critical section. In this problem, processes requesting critical sections of the same type can execute their critical sections concurrently. However, processes requesting critical sections of different types must execute their critical sections in a mutually exclusive manner. We present a distributed algorithm for solving the group mutual exclusion problem based on the notion of surrogate-quorum. Intuitively, our algorithm uses the quorum that has been successfully locked by a request as a surrogate to service other compatible requests for the same type of critical section. Unlike the existing quorum-based algorithms for group mutual exclusion, our algorithm achieves a low message complexity of O(q) and a low (amortized) bit-message complexity of O(bqr), where q is the maximum size of a quorum, b is the maximum number of processes from which a node can receive critical section requests, and r is the maximum size of a request while maintaining both synchronization delay and waiting time at two message hops. As opposed to some existing quorum-based algorithms, our algorithm can adapt without performance penalties to dynamic changes in the set of groups. Our simulation results indicate that our algorithm outperforms the existing quorum-based algorithms for group mutual exclusion by as much as 45 percent in some cases. We also discuss how our algorithm can be extended to satisfy certain desirable properties such as concurrent entry and unnecessary blocking freedom.

Download

Efficient detection of a locally stable predicate in a distributed system

April 2007

·

72 Reads

·

12 Citations

Journal of Parallel and Distributed Computing

Ranganath Atreya

·

·

·

[...]

·

Mukesh Singhal

We present an efficient approach to detect a locally stable predicate in a distributed computation. Examples of properties that can be formulated as locally stable predicates include termination and deadlock of a subset of processes. Our algorithm does not require application messages to be modified to carry control information (e.g., vector timestamps), nor does it inhibit events (or actions) of the underlying computation. The worst-case message complexity of our algorithm is O(n(m+1)), where n is the number of processes in the system and m is the number of events executed by the underlying computation. We show that, in practice, its message complexity should be much lower than its worst-case message complexity. The detection latency of our algorithm is O(d) time units, where d is the diameter of communication topology. Our approach also unifies several known algorithms for detecting termination and deadlock. We also show that our algorithm for detecting a locally stable predicate can be used to efficiently detect a stable predicate that is a monotonic function of other locally stable predicates.


A Dynamic Group Mutual Exclusion Algorithm Using Surrogate-Quorums

July 2005

·

64 Reads

·

34 Citations

Proceedings - International Conference on Distributed Computing Systems

The group mutual exclusion problem extends the traditional mutual exclusion problem by associating a type with each critical section. In this problem, processes requesting critical sections of the same type can execute their critical sections concurrently. However, processes requesting critical sections of different types must execute their critical sections in a mutually exclusive manner. In this paper, we provide a distributed algorithm for solving the group mutual exclusion problem based on the notion of surrogate-quorum. Intuitively, the algorithm uses the quorum that has been successfully locked by a request as a surrogate to service other compatible requests for the same type of critical section. Unlike the existing quorum-based algorithms for group mutual exclusion, the algorithm achieves a low message complexity of O(q), where q is the maximum size of a quorum, while maintaining both synchronization delay and waiting time at two message hops. Moreover, like the existing quorum-based algorithms, the algorithm has high maximum concurrency of n, where n is the number of processes in the system. The existing quorum-based algorithms assume that the number of groups is static and does not change during runtime. However, the algorithm can adapt without performance penalties to dynamic changes in the number of groups. Simulation results indicate that our algorithm outperforms the existing quorum-based algorithms for group mutual exclusion by as much as 50% in some cases


Fig. 1. (a) A computation and (b) its slice with respect to (x1 1) ∧ (x3 3).
Fig. 4. An algorithm to compute F b (e) for all events e on process px.  
Fig. 5. (a) A computation and (b) its slice with respect to x1 + x2 + x3 3.
Fig. 6. An on-line algorithm to update F b (e) for all events e on arrival of a new event.  
Fig. 7. Improving the time-complexity of the algorithm in Fig. 6.  

+1

Finding satisfying global states: All for one and one for all

May 2004

·

58 Reads

·

7 Citations

Summary form only given. Given a distributed computation and a global predicate, predicate detection involves determining whether there exists at least one consistent cut (or global state) of the computation that satisfies the predicate. On the other hand, computation slicing is concerned with computing the smallest sub-computation - with the least number of consistent cuts - that contains all consistent cuts of the computation satisfying the predicate. We investigate the relationship between predicate detection and computation slicing and show that the two problems are equivalent. Specifically, given an algorithm to detect a predicate b in a computation C, we derive an algorithm to compute the slice of C with respect to b. The time-complexity of the (derived) slicing algorithm is O(n|E|) times the time-complexity of the detection algorithm, where n is the number of processes and E is the set of events. We discuss how the "equivalence " result can be utilized to derive a faster algorithm for solving the general predicate detection problem. Slicing algorithms described in our earlier papers are all off-line in nature. We also give an online algorithm for computing the slice for a predicate that can be detected efficiently. The amortized time-complexity of the algorithm is O(n(c + n)) times the time-complexity of the detection algorithm, where c is the average concurrency in the computation.


Detecting Locally Stable Predicates Without Modifying Application Messages

February 2004

·

52 Reads

·

12 Citations

Lecture Notes in Computer Science

In this paper, we give an efficient algorithm to determine whether a locally stable predicate has become true in an underlying computation. Examples of locally stable predicates include termination and deadlock. Our algorithm does not require application messages to be modified to carry control information (e.g., vector timestamps), nor does it inhibit events (or actions) of the underlying computation. Once the predicate becomes true, the detection latency (or delay) of our algorithm is proportional to the time-complexity of computing a (possibly inconsistent) snapshot of the system. Moreover, only O(n) control messages are required to detect the predicate once it holds, where n is the number of processes.


Fig. 1. (a) A computation and (b) its slice with respect to (x1 1) ∧ (x3 3). 
Fig. 4. An algorithm to compute F b (e) for all events e on process px. 
Fig. 5. (a) A computation and (b) its slice with respect to x1 + x2 + x3 3. 
Fig. 6. An on-line algorithm to update F b (e) for all events e on arrival of a new event. 
Fig. 8. (a) A directed graph G, (b) slice(G, b), where b is the predicate "all channels are empty", and (c) the set of non-trivial consistent cuts of H. 
Finding Satisfying Global States: All for One and One for All

February 2004

·

80 Reads

·

2 Citations

Given a distributed computation and a global predicate, predicate detection is concerned with determining whether there exists at least one consistent cut (or global state) of the computation that satisfies the predicate. On the other hand, computation slicing involves computing the smallest subcomputation---with the least number of consistent cuts--- that contains all consistent cuts of the computation satisfying the predicate. In this paper, we study the relationship between the above two problems and show that they are actually equivalent. Specifically, given an algorithm to detect a predicate, we derive an algorithm to compute the slice for the predicate. The time-complexity of our slicing algorithm is O(n|E|) times the time-complexity of the detection algorithm, where n is the number of processes and E is the set of events. We discuss how the "equivalence" result of this paper can be utilized to derive a more e#cient algorithm for solving the general predicate detection problem.

Citations (5)


... Deadlock is a stable property, in the sense that once it occurs in a global state Ψ of a distributed computation, it continues to hold for all the states subsequent to Ψ . Deadlock avoidance and deadlock resolution are fundamental problems in the study of distributed systems (Atreya et al. 2007). ...

Reference:

Deadlock resolution in wait-for graphs by vertex/arc deletion
Efficient detection of a locally stable predicate in a distributed system
  • Citing Article
  • April 2007

Journal of Parallel and Distributed Computing

... Therefore to improve the availability of replica control protocols, a mechanism by Rabinovich and Lazowska was proposed which allows dynamic adjustment of quorum sets when defined based on a logical network structure [Atreya, 2005]. Its main principle was to devise a rule which [16] unambiguously imposes a desired logical structure on a given ordered set of processes. ...

A Dynamic Group Mutual Exclusion Algorithm Using Surrogate-Quorums

Proceedings - International Conference on Distributed Computing Systems

... The biological principles underlying BPEC suggest natural extensions to distributed space systems. Swarms of small satellites could implement collective error correction through interagent attention mechanisms, analogous to quorum sensing in bacterial colonies [36]. Terrestrial applications in autonomous vehicles may benefit from the algorithm's fault tolerance, particularly for lidar-camera fusion in adverse weather. ...

A Quorum-Based Group Mutual Exclusion Algorithm for a Distributed System with Dynamic Group Set

IEEE Transactions on Parallel and Distributed Systems