GPU-based SNESIM implementation for multiple-point statistical simulation
Among techniques applied to categorical variables simulation, multiple-point statistical simulation is widely used because of its non-iterative characteristic and powerful capability of curvilinear features reproduction. In current implementations, the multiple-point statistics (MPS) are inferred from the training image by storing all the observed patterns scanned by data templates of a certain size within a data structure, either a tree used by Single Normal Equation Simulation Algorithm (SNESIM) or a list used by IMPALA. This type of algorithms has the advantage of being fast to be applied, but it presents some critical limitations. In particular, the data structure is extremely memory demanding. For large-scale problems with numerous patterns, large data templates cannot be used. Therefore, complex structures are then difficult to be simulated. A GPU computing scheme for SNESIM is proposed for multiple point statistical simulation in this paper. Taking advantage of powerful computing capability of GPU's many-core architecture, parallel operations are applied to each simulation grid node, which is the most time-consuming portion among entire simulation process. This scheme requires fixed size memory, so it is independent of inference of data template size, which is especially important for large-scale problems. The simulation results based on a NVIDIAGTX680 device can obtain about 15 speedup than on an Intel Core i3 540 CPU, which demonstrates the efficiency of the scheme against search-tree based implementation of SNESIM contained in SGeMS software.
gpu-based snesim multiple-point statistical simulation parallel computing