<p><b>Abstract</b>—Systems modeled as directed graphs where nodes represent components and edges represent fault propagation between components, are studied from a parallel computation viewpoint. Some of the components are equipped with alarms that ring in response to an abnormal condition. The single fault diagnosis problem is to compute the set of all potential failure sources, <it>P</it><sub><it>S</it></sub>, that correspond to a set of ringing alarms <it>A</it><sub><it>R</it></sub>. There is a lower bound of Ω(<it>e</it> + <it>k</it>(<it>n</it>−<it>k</it> + 1)) for any sequential algorithm for this problem (under a decision tree model), where <it>n</it> and <it>e</it> are the number of nodes and edges of the graph respectively, and <it>k</it> is the number of alarms. Using a CREW PRAM of <tmath>$p\le {{{k(n-k+1)} \over {\log k}}}$</tmath> processors, the graph can be preprocessed in <it>O</it>(<it>n</it><super>2.81</super> / <it>p</it> + log<super>2</super><it>n</it>) time; then <it>P</it><sub><it>S</it></sub> can be computed in <it>O</it>(<it>k</it>(<it>n</it>−<it>k</it> + 1) / <it>p</it> + log <it>k</it>) time. On a hypercube of <tmath>$p\le {{{k(n-k+1)} \over {\log k}}}$</tmath> processors, the preprocessing can be done in <tmath>$O\left( {{{{n^2} \over {\sqrt p}}}+{{{n^{2.61}} \over {p^{0.805}}}} +{{{nk(n-k+1)} \over p}}} \right)$</tmath> time; then <it>P</it><sub><it>S</it></sub> can be computed in <tmath>$O\left( {{{{k(n-k+1)\log n} \over {p\log k}}}+\log n} \right)$</tmath> time.</p>