26 research outputs found

    Symbolic computation and representation of deadlock avoidance policies for complex resource allocation systems with application to multithreaded software

    No full text
    In our recent work, we proposed a series of binary decision diagram (BDD-) based approaches for developing the maximally permissive deadlock avoidance policy (DAP) for a class of complex resource allocation systems (RAS). In this paper, (i) we extend these approaches by introducing a procedure that generates a set of comprehensible \u27guard\u27 predicates to represent the resulting DAP, and (ii) we customize them to the problem of deadlock avoidance in shared-memory multithreaded software, that has been previously addressed by the Gadara project. In the context of this last application, the generated guards can be instrumented directly into the source code of the underlying software threads, providing, thus, a very efficient and natural representation of the target policy. At the same time, by integrating the representational and computational strengths of symbolic computation, the presented approach can support the computation of the maximally permissive DAP for RAS corresponding to problem instances of even larger scale and complexity than those addressed in the current literature

    Symbolic computation of boundary unsafe states in complex resource allocation systems using partitioning techniques

    No full text
    In some recent work, we proposed a binary decision diagram (BDD-) based approach for the development of the maximally permissive deadlock avoidance policy (DAP) for complex resource allocation systems (RAS), that is based on the identification and the explicit storage of a set of critical states in the underlying RAS state-space. The work presented in this paper seeks to extend the applicability of the aforementioned results by coupling them with a partitioning technique for the more efficient storage and processing of the BDD that encodes the underlying state space. The reported numerical experimentation demonstrates the increased efficiency of the new algorithm w.r.t. its space and time complexity, compared to the previous method that uses a more monolithic representation of the RAS state-space. The last part of the paper also discusses some further potential advantages of the presented method, including its amenability to a parallelized implementation and its ability to cope effectively and efficiently with uncontrollable behavior

    Designing optimal deadlock avoidance policies for sequential resource allocation systems through classification theory: existence results and customized algorithms

    No full text
    A recent line of work has sought the implementation of the maximally permissive deadlock avoidance policy (DAP) for a broad class of complex resource allocation systems (RAS) as a classifier that gives effective and parsimonious representation to the dichotomy of the underlying behavioral space into the admissible and inadmissible subspaces defined by that policy. The work presented in this paper complements the past developments in this area by providing (i) succinct conditions regarding the possibility of expressing the aforementioned classifier as a set of linear inequalities in the RAS state variables, and (ii) an efficient customized algorithm for the synthesis of pertinent non-linear classifiers that implement the target DAP with minimum run-time computational overhead, in the case that a linear-classifier-based representation of this policy is not possible

    Plan Repair in Conflict-Free Routing

    No full text
    Abstract. In conflict-free routing a set of agents have to traverse a common infrastructure without interfering with each other. Maza and Castagna [1] showed how route plans can be repaired by maintaining the priority of agents on infrastructure resources. They also developed an algorithm that allows agents to change priorities to avoid long waits. We extend the work of Maza and Castagna by (i) specifying an algorithm that allows more priority changes, and by (ii) defining a graph structure that can predict exactly which priority changes will lead to a deadlock, and which will not. Our experiments show that our algorithm performs around twice as many priority changes as Maza and Castagna’s algorithm. Also, the average delay produced by our algorithm is lower in our experiments, although there is no clear relation between the number of priority changes and the delay: priority changes seem the most effective when the system is not fully congested, and when there are few incidents that cause delay.

    Maximally permissive deadlock avoidance for sequential resource allocation systems using disjunctions of linear classifiers

    No full text
    A recent line of work has sought the implementation of the maximally permissive deadlock avoidance policy (DAP) for a broad class of complex resource allocation systems (RAS) as a classifier that gives effective and parsimonious representation to the dichotomy of the underlying behavioral space into the admissible and inadmissible subspaces defined by the target policy. The considered RAS class pertains also to the management of the lock allocation in multi-threaded software. The work presented in this paper complements the past developments in this area by providing (i) succinct conditions regarding the possibility of expressing the aforementioned classifier as a set of linear inequalities in the RAS state variables, and (ii) an efficient customized algorithm for the synthesis of pertinent non-linear classifiers that implement the target DAP with minimum run-time computational overhead, in the case that a linear-classifier-based representation of this policy is not possible
    corecore