Abstract
The circuit value update problem is the problem of updating values in a representation of a combinational circuit when some of the inputs are changed. We assume for simplicity that each combinational element has bounded fan-in and fan-out and can be evaluated in constant time. This problem is easily solved on an ordinary serial computer in O(W+D) time, where W is the number of elements in the altered subcircuit and D is the subcircuit's embedded depth (its depth measured in the original circuit).
In this paper we show how to solve the circuit value update problem efficiently on a P-processor parallel computer. We give a straightforward synchronous, parallel algorithm that runs in \(O(W/P + D\lg P)\) expected time. Our main contribution, however, is an optimistic, asynchronous, parallel algorithm that runs in \(O(W/P+D+\lg W + \lg P)\) expected time, where W and D are the size and embedded depth, respectively, of the ``volatile'' subcircuit, the subcircuit of elements that have inputs which either change or glitch as a result of the update. To our knowledge, our analysis provides the first analytical bounds on the running time of an optimistic, asynchronous, parallel algorithm.
Similar content being viewed by others
Author information
Authors and Affiliations
Additional information
Received November 1, 1995, and in final form November 25, 1996.
Rights and permissions
About this article
Cite this article
Leiserson, C., Randall, K. Parallel Algorithms for the Circuit Value Update Problem. Theory Comput. Systems 30, 583–597 (1997). https://doi.org/10.1007/s002240000069
Published:
Issue Date:
DOI: https://doi.org/10.1007/s002240000069