We present a parallel algorithm to efficiently solve the graph isomorphism problem for most kinds of practical graphs. In many pattern recognition applications, patterns stored in a database may be represented by labeled graphs. Recognition of an input is achieved by comparing it to each stored graph. Our algorithm consists of three phases: preprocessing, link construction, and ambiguity resolution, and has a sequential time complexity of O(dn(6)log dn). We demonstrate the efficiency of the algorithm through an implementation on a shared memory MIMD machine.