Two Parallel Algorithms for Effective Calculation of the Precipitation Particle Spectra in Elaborated Numerical Models of Convective Clouds

  • Nikita O. Raba
  • Elena N. Stankova
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8584)


Effective calculation of the spectra of precipitation particles, i.e. the spectra of water drops, ice and snow crystals, graupel and hail is one of the most challenging problems in 2-D and 3-D numerical models of natural convective clouds. Algorithms for spectrum calculation are usually proportional to the cubic degree of spectral bin number and therefore are computationally very expensive. The problem becomes even more complicated taking into account the fact that the spectrum of each precipitation particle should be calculated in each spatial grid point of 2-D and 3-D model. The algorithm of Kovetz and Olund and the algorithm of Bott have been chosen as two of the most popular algorithms intended for calculation of the evolution of cloud particle spectra for subsequent optimization and parallelization. Kovetz and Olund algorithm has been optimized and parallelized using both CPU and GPU. Its optimal version is quadratic in time and allows using more than 1000 threads for effective parallelization. Our results show that speed-up of the optimized algorithm is equal to 2.6–13 depending upon the number of spectrum grid points and the use of GPU can accelerate calculations 15-20 times. Bott’s algorithm has been parallelized using only CPU and provides speed up equal to 5 on 8 threads. The developed algorithms are universal: they can be applied to models of different dimensions and to different types of cloud particles. They can be effectively used in elaborated numerical cloud models for operational forecast of dangerous weather phenomena, such as thunderstorm, heavy rain and hail.


parallel algorithm GPU CUDA technology stochastic collection equation numerical modeling 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Khain, A., Ovtchinnikov, M., Pinsky, M., Pokrovsky, A., Krugliak, H.: Notes on the state-of-the-art numerical modeling of cloud microphysics Review. Atmospheric Research 55, 159–224 (2000)CrossRefGoogle Scholar
  2. 2.
    Kogan, Y., Mazin, I.P., Sergeev, B.N., Khvorostyanov, V.I.: Numerical cloud modeling, p. 183. Gidrometeoizdat, Moscow (1984)Google Scholar
  3. 3.
    Pruppacher, H.R., Klett, J.D.: Microphysics of Clouds and Precipitation, p. 954. Kluwer Academic (1997)Google Scholar
  4. 4.
    Tzivion, S., Feingold, G., Levin, Z.: An efficient numerical solution to the stochastic collection equation. J. Atmos. Sci. 44, 3139–3149 (1987)CrossRefGoogle Scholar
  5. 5.
    Prat, O.P.: A Robust Numerical Solution of the Stochastic Collection–Breakup Equation for Warm Rain. J. of Applied Meteorology and Climatology 46, 1480–2014 (2007)CrossRefGoogle Scholar
  6. 6.
    Kovetz, A., Olund, B.: The effect of coalescence and condensation on rain formation in a cloud of finite vertical extent. J. Atm. Sci. 26, 1060–1065 (1969)CrossRefGoogle Scholar
  7. 7.
    Stankova, E.N., Zatevakhin, M.A.: Modified Kovetz and Olund method for the numerical solution of stochastic coalescence equation. In: Proceedings 12th International Conference on Clouds and Precipitation, Zurich, August 19-23, pp. 921–923 (1996)Google Scholar
  8. 8.
    Bott, A.: A flux method for the numerical solution of the stochastic collection equation. J. Atmos. Sci. 55, 2284–2293 (1997)CrossRefGoogle Scholar
  9. 9.
    Raba, N.O., Stankova, E.N.: On the effectiveness of using the GPU for numerical solution of stochastic collection equation. In: Murgante, B., Misra, S., Carlini, M., Torre, C.M., Nguyen, H.-Q., Taniar, D., Apduhan, B.O., Gervasi, O. (eds.) ICCSA 2013, Part V. LNCS, vol. 7975, pp. 248–258. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  10. 10.
    Raba, N.: Optimization algorithms for the calculation of physical processes in the cloud model with detailed microphysics. In: Raba, N. (ed.) Applied Mathematics. Informatics. Control Processes, West. SPSU. Ser. 10, vol. 3, pp. 121–126 (2010) (In Russian)Google Scholar
  11. 11.
    Raba, N.: Development and implementation of the algorithm for calculating the coagulation in a cloud model with mixed phase using CUDA technology. In: Applied Mathematics. Informatics. Control Processes, Bulletin of St. Petersburg State University. Series 10, vol. 4, pp. 94–104 (2011) (In Russian)Google Scholar
  12. 12.
    Sanders, J., Kandrot, E.: CUDA by Example: An Introduction to General-Purpose GPU Programming, p. 312. Addison-Wesley Professional (2010) ISBN-13: 978-0131387683Google Scholar
  13. 13.
    Luebke, D., Harris, M., Krüger, J., Purcell, T., Govindaraju, N., Buck, I., Woolley, C., Lefohn, A.: GPGPU: general purpose computation on graphics hardware. In: ACM SIGGRAPH 2004 Course Notes, Los Angeles, CA, August 08-12, p. 33 (2004), doi:10.1145/1103900.1103933Google Scholar
  14. 14.
    Buck, I., Fatahalian, K., Hanrahan, P.: GPUbench: evaluating GPU performance for numerical and scientific applications. In: Poster Session at GP2 Workshop on General Purpose Computing on Graphics Processors (2004),
  15. 15.
    Gaster, B., et al.: Heterogeneous Computing with OpenCL, p. 296. Morgan Kaufmann, Waltham (2011) ISBN 978-0-12-387766-6Google Scholar
  16. 16.
    Banger, R., Bhattacharyya, K.: OpenCL Programming by Example, p. 304. Packt Publishing (2013) ISBN: 1849692343, ISBN 13: 9781849692342Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Nikita O. Raba
    • 1
  • Elena N. Stankova
    • 1
    • 2
  1. 1.Saint-Petersburg State UniversitySt.-PetersburgRussia
  2. 2.Saint-Petersburg Electrotechnical University “LETI”St.-PetersburgRussia

Personalised recommendations