Development and application of a parallel chemical compositional reservoir simulator



Journal Title

Journal ISSN

Volume Title



Simulation of large-scale and complicated reservoirs requires a large number of gridblocks, which requires a considerable amount of memory and is computationally expensive. One solution to remedy the computational problem is to take advantage of clusters of PCs and high-performance computing (HPC) widely available nowadays. We can run large-scale simulations faster and more efficiently by using parallel processing on these systems. In this research project, we develop a parallel version of an in-house chemical flooding reservoir simulator (UTCHEM), which is the most comprehensive chemical flooding simulator. Every physical feature of the original code has been incorporated in the parallel code. The simulation results of several case studies are compared to the original code for verification and performance of the parallelization. The efficiency of the parallelization is evaluated in terms of speedup using multiple numbers of processors. Consequently, we improve the parallel efficiency to carry out the simulations by minimizing the communications among the processors by modifying the coding. The speedup results in comparison to linear speedup (considering the ideal speedup) indicate excellent efficiency. However, using large number of processors causes the simulator speedup to deviate from linear and the efficiency to decrease. The reason for the degradation is that the time devoted to communication between the processors increases with number of processors. To the best of our knowledge, the parallel version of UTCHEM (UTCHEMP) is the first parallel chemical flooding reservoir simulator that can be effective in running large-scale cases. While it is not feasible to simulate large-scale chemical flooding reservoirs with millions of gridblocks in any serial simulator due to computer memory limitations, UTCHEMP makes simulation of such cases practical. Moreover, this parallel simulator can take advantage of multiple processors to run field-scale simulations with millions of gridblocks in few hours.