An efficient parallelization method based on MPI (Message Passing Interface) for a Monte Carlo program for two-dimensional and three-dimensional simulation of ion implantations is presented. The method is based on a master-slave strategy where the master process synchronizes the slaves and performs the I/O-operations, while the slaves perform the physical simulation. For this method the simulation domain is geometrically distributed among several CPUs which have to exchange only very few information during the simulation. Thereby the communication overhead between the CPUs is kept so low that it has almost no influence on the performance gain even if a standard network of workstations is used instead of a massively parallel computer to perform the simulation. The performance gain has been optimized by identifying bottlenecks of this strategy when it is applied to arbitrary geometries consisting of various materials. For that reason different physical models within the simulation domain must be applied why it is impossible to determine a reasonable domain distribution before starting the simulation. Due to a feedback between master and slaves by on-line performance measurements, we obtain an almost linear performance gain on a cluster of workstations with just slightly varying processor loads. Besides the increase in performance the parallelization method also achieves a distribution of the required memory. This allows three-dimensional simulations on a cluster of workstations, where each single machines would not have enough memory to perform the simulation on its own.
展开▼