The flow simulation is displayed in numerous areas, such as film production, game development, ballistics etc. Basically, two methods are used for the modeling of liquids: the Eulerian method and the Lagrange method. The Smoothed Particle Hydrodynamics (SPH) is based on the Lagrange method, which divides the liquid into elemental particles. One of my aims is to introduce, study and implement the SPH model in C#. This was accomplished, but I found that it takes a long time for the simulation, and only a few particles can be used to perform an effective simulation. I looked at what kind of paralel implementation options are. First of all, I took advantage of C#, which has already improved, but really good results could be achieved by programming the GPU. This was done in OpenCL environment.
Comparing the different solutions, large differences can be detected. Thanks to the parallelization, much faster simulations can be performed and much larger liquid masses can be modeled.
This topic open the door to additional optimization, and should be a good idea to test the finished software on stronger hardware.