An algorithm for the simultaneous 3-D reconstruction of several types of object, where each type of object may possibly have a rotational symmetry, from 2-D projection images, where for each image the type of object imaged, the projection orientation used to create the image, and the location of the object in the image are unknown, is described. The motivating application is the determination of the 3-D structure of small spherical viruses from cryo electron microscopy images. The algorithm is a maximum likelihood estimator which is computed by expectation maximization (EM). Due to the structure of the statistical model, the maximization step of EM can be easily computed but the expectation step requires 5-D numerical
quadrature. The computational burden of the quadratures necessitates
parallel computation and three different implementations of two different types of parallelism have been developed using pthreads (for shared memory processors) and MPI (for distributed memory processors). An example applying one of the MPI implementations, running on a 32 node PC cluster, to experimental images of Flock House Virus with comparison to the x-ray crystal diffraction structure of the virus is described.