Abstract
Summary Hydrodynamic modeling of oil reservoir processes is one of the complex problems of fluid mechanics, since underground reservoir processes can be very complex. It is necessary to take into account phase transitions, chemical transformations, temperature effects, and etc. When simulating multiphase, multicomponent liquid filtration, the properties of the phase can vary depending on the composition of temperature and pressure. The oil phase consists of hydrocarbon components that range from the lightest (methane) to the heaviest (bitumen). You can simulate the process of multicomponent filtration, knowing the physical parameters of the pseudo-components (molecular weight, critical pressure, critical temperature, compressibility, density, viscosity, thermal conductivity and specific heat). Parallel algorithms implemented on graphic processors (GPUs) than on traditional processors (CPUs) are excellently suited to speed up such demanding tasks. In various fields of research, there have been many successful implementations on the GPU, such as medical image analysis and computational fluid dynamics. The GPU achieves high performance by executing more than a thousand threads at the same time, and each of them processes different data sets. The purpose of this paper is to implement the parallel algorithm on modern graphic processors (GPUs) for numerically solving a multiphase multicomponent fluid filtration problem in porous media, taking into account the number of phases and components. For the numerical solution of the problem, the alternating direction implicit method (ADI) was chosen. ADI is a finite difference numerical method for solving parabolic, hyperbolic and elliptic equations, and it is widely used in the fields of science and technology. In the ADI method, each numerical step is divided into several sub-steps, depending on the spatial dimension of the problem, and systems of linear equations are solved implicitly in one direction, with an explicit scheme in the other direction. In addition, at each sub-stage, the equations have a tridiagonal structure. To solve the tridiagonal system of equations, several parallel algorithms were implemented: cyclic reduction (CR) and parallel cyclic reduction (PCR) methods. And to implement the sequential algorithm, the Thomas implicit method was used. In this paper, to implement parallel algorithms CUDA technology and the OpenCL framework were used. The results of the study showed that the OpenCL framework is promising to use on any GPUs of any devices and get comparable results in terms of calculation time with CUDA. And to calculate parallel algorithms on CUDA, only GPUs from Nvidia are needed.