Mixed precision parallel preconditioner and linear solver for compositional reservoir simulation

Reservoir simulation role in value creation and strategic management decisions cannot be over emphasized. Simulation of complex challenging reservoirs with millions of grid blocks especially in compositional mode is very time-consuming even with fast modern computers. On the other hand, high price of cluster supercomputers prevents them for being commonly used for fast simulation of such reservoirs. In recent years, the development of many-core processors like cell processors, DSPs, and graphical processing units (GPUs) has provided a very cost-effective hardware platform for fast computational operations. However, programming for such processors is much more difficult than conventional CPUs, and new parallel algorithm design and special parallel implementation methods are needed. Using the computational power of CPUs, GPUs, and/or any other processing unit, Open Computing Language (OpenCL) provides a framework for programming for heterogeneous platforms. In this paper, OpenCL is used to employ the computational power of a GPU to build a preconditioner and solve the linear system arising from compositional formulation of multiphase flow in porous media. The proposed parallel preconditioner is proved to be quite effective, even in heterogeneous porous media. Using data-parallel modules on GPU, the preconditioner/solver runtime reduced at least 1 order of magnitude compared to their serial implementation on CPU.

[1]  J. Xu OpenCL – The Open Standard for Parallel Programming of Heterogeneous Systems , 2009 .

[2]  K. H. Coats AN EQUATION OF STATE COMPOSITIONAL MODEL , 1980 .

[3]  John Killough,et al.  An Experimental Study of GPU Acceleration for Reservoir Simulation , 2013, ANSS 2013.

[4]  Edmond Chow,et al.  Approximate Inverse Preconditioners via Sparse-Sparse Iterations , 1998, SIAM J. Sci. Comput..

[5]  Jeremy Appleyard,et al.  Accelerating Reservoir Simulators using GPU Technology , 2011, ANSS 2011.

[6]  Yousef Saad,et al.  Iterative methods for sparse linear systems , 2003 .

[7]  Kamy Sepehrnoori,et al.  A fully implicit parallel EOS compositional simulator for large scale reservoir simulation. , 1999 .

[8]  Peng Wang,et al.  Parallel Compositional Reservoir Simulation on Clusters of PCs , 2001, Int. J. High Perform. Comput. Appl..

[9]  John L. Gustafson,et al.  Reevaluating Amdahl's law , 1988, CACM.

[10]  S. Matthäi Reservoir Simulation: Mathematical Techniques in Oil Recovery , 2008 .

[11]  Kamy Sepehrnoori,et al.  A Fully Implicit, Compositional, Parallel Simulator for IOR Processes in Fractured Reservoirs , 2006 .

[12]  Hui Liu,et al.  GPU-based Parallel Reservoir Simulation for Large-scale Simulation Problems , 2012 .

[13]  Yousef Saad,et al.  Exploiting Capabilities of Many Core Platforms in Reservoir Simulation , 2011, ANSS 2011.

[14]  Jeff A. Stuart,et al.  A study of Persistent Threads style GPU programming for GPGPU workloads , 2012, 2012 Innovative Parallel Computing (InPar).

[15]  Henk A. van der Vorst,et al.  Bi-CGSTAB: A Fast and Smoothly Converging Variant of Bi-CG for the Solution of Nonsymmetric Linear Systems , 1992, SIAM J. Sci. Comput..

[16]  Vladislav I. Dzyuba,et al.  Advances in Modeling of Giant Reservoirs , 2012 .

[17]  F. Rodríguez,et al.  A Semi-Implicit Formulation for Compositional Reservoir Simulation , 1996 .

[18]  John Killough,et al.  Fifth Comparative Solution Project: Evaluation of Miscible Flood Simulators , 1987 .