String theory calculations involve integrating over all possible two dimensional surfaces swept out by the string in some higher dimensional space-time. In order to compute this integral numerically, the surfaces are discretized as a triangulated mesh. The integral is then approximated by a sum over a large number of different meshes, which are obtained by making random changes to the mesh throughout the calculation, using a Monte Carlo method. The mesh is thus referred to as a dynamically triangulated random surface.
Currently we are running our simulations on parallel computers and networks of workstations by using the trivial parallelism of averaging the results of independent simulations on different processors. However this can only be done effectively for small meshes. We are currently working on a data parallel algorithm for larger meshes. Since both the data and the algorithm are dynamic and irregular, this is a challenging problem, which requires parallel algorithms for graph coloring, graph partitioning, load balancing, adaptive mesh generation, as well as the Monte Carlo update.
A dynamically triangulated random surface configuration for a model of 3 dimensional string theory.