Parallelization as a Source of Randomness in Iterative Tomography: A Case Study
摘要
We ported a tomographic reconstruction code from MPI to OpenMP (formally, the software systems Message Passing Interface and Open Multi-Processing). Due to randomness associated with the order of floating point operations, we found that verifying the correctness of the port required a statistical comparison of the answers. These agree within acceptable bounds. As a function of iteration number, the solutions generated with different numbers of cores at first diverge, then converge. We also studied the effect of having different random number starts. In this case, the answers always converge toward each other, although their variation is greater than the variation associated with changing the number of cores with a fixed random number seed.