arXiv · 1802.03950
Quasi-Optimal Partial Order Reduction
Abstract
A dynamic partial order reduction (DPOR) algorithm is optimal when it always explores at most one representative per Mazurkiewicz trace. Existing literature suggests that the reduction obtained by the non-optimal, state-of-the-art Source-DPOR (SDPOR) algorithm is comparable to optimal DPOR. We show the first program with $\mathop{\mathcal{O}}(n)$ Mazurkiewicz traces where SDPOR explores $\mathop{\mathcal{O}}(2^n)$ redundant schedules and identify the cause of the blow-up as an NP-hard problem. Our main contribution is a new approach, called Quasi-Optimal POR, that can arbitrarily approximate an optimal exploration using a provided constant k. We present an implementation of our method in a new tool called Dpu using specialised data structures. Experiments with Dpu, including Debian packages, show that optimality is achieved with low values of k, outperforming state-of-the-art tools.
Explore related subjects
Keep this discovery
Huyen T. T Nguyen, César Rodríguez, Marcelo Sousa, Camille Coti, Laure Petrucci. 2018-02-12. Quasi-Optimal Partial Order Reduction. https://arxiv.org/abs/1802.03950
Cite the original work for its findings. Save a collection to share your selection of sources.