We describe a parallel implementation of a 3D semiconductor device simulator based on the MPI message passing interface. In this article, we primarily focus on the effective implementation of the numerical algorithms employed in the 3D device simulator, in particular the Newton-Krylov-Schwarz method for solving the large, sparse nonlinear equations problems resulting from the semiconductor device modeling on unstructured meshes. Test results obtained on a shared-memory multiprocessor computer are presented and analyzed.