Adaptive Parallel Reservoir Simulation
Authors: Lu Pengbo , Beckner Bret Loneil , Shaw Jason S. , Mishev Ilya D. , Eccles Tom K. , Usadi Adam K. 
Published: November 2008

Abstract
The availability of multi-core CPUs for personal computers makes desktop parallel computing a reality. Parallel computing for reservoir simulation creates the opportunity for significant run time reduction but also introduces additional technical challenges, particularly in the areas of load balancing and general algorithmic robustness.
In this paper we will discuss the development and application of ExxonMobil's numerical reservoir simulator, EMpowerTM, to parallel desktop systems, focusing on the following areas:A flexible, hierarchical, object-oriented design that supports fast development, functionality encapsulation, and ease of maintenanceA fully unstructured grid for modeling large and complex reservoirs with fewer gridblocks, yet retaining accurate physicsA highly efficient and robust parallel partition of the fully unstructured grids for modeling large and complex reservoirsBuilt-in intelligence for the solver suite and parallel execution to fulfill specific algorithmic needsAdaptive Implicit Method (AIM) for a high-level of numerical stability with significant run-time speed-up and memory footprint reductionDynamic load balancing for seamless integration between shared-memory based parallel computing and adaptive implicit methods
We will also describe experiences with real models and briefly discuss mechanisms for addressing problems encountered. We will demonstrate that we can achieve a 3~4 time speedup over serial runs without AIM on real field cases using quad-core machines.

Introduction
ExxonMobil released "next generation" reservoir simulator, EMpower, in 2000. EMpower comprises a suite of applications, including an objected-oriented database, an unstructured gridding package, a Graphical User Interface (GUI), a multi-platform simulation engine, and a variety of utilities to allow reservoir engineers to run the simulator within different computing environments. A more complete overview of the simulator may be found elsewhere1. The fundamental design concept is to use an unstructured grid to keep the model size relatively small, flexible and robust formulations to maintain stability and accuracy, and parallelization to reduce the model run time. Recently, multi-core multi-processor shared-memory (SMP) desktops and have become are readily accessible to our widely scattered reservoir engineering community, making parallel reservoir simulation a reality for every reservoir engineer.
In EMpower, the unstructured mesh representing the reservoir and the surface facility network is a graph of nodes and connections. For the reservoir, we use a generalized mass volume balance approach that treats both black oil and compositional simulations in the unified framework described by Watts2. Discretization uses a two-point finite difference scheme for different formulations: Coupled Implicit (CI, or Fully IMplicit, FIM), Sequential Implicit (SI), IMPlicit Pressure Explicit Saturation (IMPES), Implicit Pressure Saturation (IMPSAT), and their combinations (Variable Implicit, VI). The key difference among different formulations is the selection of implicit and explicit variables. They are all subject to stability constraints, except for the coupled implicit method for linear problems, which is unconditionally stable.