Skip to main content

Monte Carlo Simulation of the Solar Radiation Transfer in a Cloudy Atmosphere with the Use of Graphic Processor and NVIDIA CUDA Technology


Problems of improving the efficiency of the Monte Carlo numerical simulation of solar radiation propagation in the Earth’s atmosphere by transition from sequential to parallel computations are discussed. A new parallel algorithm oriented to a computational system with the NVIDIA CUDA enabled graphics processor is presented. The efficiency of parallelization is analyzed by an example of calculating the upward and downward fluxes of solar radiation both in a vertically homogeneous and in an inhomogeneous model of the atmosphere. The results of testing the new algorithm under various atmospheric conditions including continuous single-layered and multilayered cloudiness are presented, with allowance for selective molecular absorption and without regard to it. The results of testing the code using video cards with different computational capabilities are analyzed. It is shown that the changeover of computing from conventional PCs to the architecture of graphics processors gives more than a hundredfold increase in performance and fully reveals the capabilities of the technology used.

This is a preview of subscription content, access via your institution.


  1. 1.

    O. Dubovik, T. Lapyonok, P. Litvinov, M. Herman, D.Fuertes, F. Ducos, A. Lopatin, A. Chaikovsky, B. Torres, Y. Derimian, X. Huang, M. Aspetsberger, and C. Federspiel, “GRASP: A versatile algorithm for characterizing the atmosphere,” SPIE: Newsroom (2014). doi 10.1117/2.1201408.005558

    Google Scholar 

  2. 2.

    Radiative Transfer in Scattering and Absorbing Atmospheres: Standard Computational Procedures, Ed. by J. Lenoble (A Deepak Pub, 1986).

    Google Scholar 

  3. 3.

    G. I. Marchuk, G. A. Mikhailov, M. A. Nazaraliev, R. A. Darbinyan, B. A. Kargin, and B. S. Elepov, Monte Carlo Methods in Atmospheric Optics (Nauka, Novosibirsk, 1976) [in Russian].

    Google Scholar 

  4. 4.

    A. Marshak and A. B. Davis, 3D Radiative Transfer in Cloudy Atmospheres (Springer, Berlin, 2005).

    Book  Google Scholar 

  5. 5.

    G. Moore, “Litography and the future of Moore’s law,” Proc. SPIE—Int. Soc. Opt. Eng. 2437, 2–17 (1995).

    ADS  Google Scholar 

  6. 6.

    D. R. Kirkby and D. T. Delpy, “Parallel operation of Monte Carlo simulations on a diverse network of computers,” Phys. Med. Biol. 42 (6), 1203–1208 (1997).

    Article  Google Scholar 

  7. 7.

    A. Colasanti, G. Guida, A. Kisslinger, R. Liuzzi, M. Quarto, P. Riccio, G. Roberti, and F. Villani, “Multiple processor version of a Monte Carlo code for photon transport in turbid media,” Comput. Phys. Commun. 132 (1–2), 84–93 (2000).

    ADS  Article  MATH  Google Scholar 

  8. 8.

    A. V. Kozhevnikova, M. V. Tarasenkov, and V. V. Belov, “Parallel computations for solving problem of the reconstruction of the reflection coefficient of the Earth’s surface by satellite data,” Atmos. Ocean. Opt. 26 (4), 326–328 (2013).

    Article  Google Scholar 

  9. 9.

    B. M. Glinskii, A. S. Rodionov, M. A. Marchenko, D. I. Podkorytov, and D. V. Vins, “Agent-oriented approach to distributed statistical simulation at exascale computers,” Vestn. Yuzhny Ural. Gos. Univ., No. 18 (277), Is. 12, 94–99 (2012).

    Google Scholar 

  10. 10.

    K. N. Volkov, Yu. N. Deryugin, V. N. Emel’yanov, A. G. Karpenko, A. S. Kozelkov, and I. V. Teterina, Methods for Acceleration Gas Dynamic Computations on Non-structured Grids (Fizmatlit, Moscow, 2014) [in Russian].

    Google Scholar 

  11. 11.

    A. V. Boreskov, A. A. Kharlamov, N. D. Markovskii, D. N. Mikushin, E. V. Mortikov, A. A. Myl’tsev, N. A. Sakharnykh, and V. A. Frolov, Parallel GPU Computations: Architecture and CUDA Program Model (Izd-vo Mosk. Un-ta, Moscow, 2012) [in Russian].

    Google Scholar 

  12. 12.

    C. Zhu and Q. Liu, “Review of Monte Carlo modeling of light transport in tissues,” J. Biomed. Opt. 18 (5), 050902–1 (2013).

    ADS  Article  Google Scholar 

  13. 13.

    I. I. Fiks, “The use of graphics processors for Monte Carlo solution of the light propagation problem in fluorescent tomography,” Vestn. Nizhegorodsk. Un-ta im. N.I. Lobachevskogo, No. 4(1), 190–195 (2011).

    Google Scholar 

  14. 14.

    M. Yu. Kirillin, I. I. Fiks, A. R. Katichev, A. V. Gorshkov, and V. P. Gergel’, “High-efficient computations for problems of biomedical optical diagnostics,” in Supercomputer Technologies in Science, Education, and Industry, Ed. by V.A. Sadovnichii, G.I. Savin, Vl.V. Voevodin, Is. 3 (Izd-vo Mosk. Un-ta, Moscow, 2012) [in Russian].

    Google Scholar 

  15. 15.

    D. A. Petrov, “Simulation of optical methods in biomedical diagnostics,” Koncept 11, 2851–2855 (2016).

    Google Scholar 

  16. 16.

    E. Alerstam, W. C. Y. Lo, T. D. Han, J. Rose, S. Anderson-Engels, and L. Lilge, “Next-generation acceleration and code optimization for light transport in turbid media using GPUs,” Biomed. Opt. Express 1 (2), 658–675 (2010).

    Article  Google Scholar 

  17. 17.

    E. Alerstam, T. Svensson, and S. Anderson-Engels, “Parallel computing with graphics processing units for high-speed Monte Carlo simulation of photon migration,” J. Biomed. Opt. 13 (6), 060504–1 (2008).

    ADS  Article  Google Scholar 

  18. 18.

    F. Cai and S. He, “Using graphics processing units to accelerate perturbation Monte Carlo simulation in a turbid medium,” J. Biomed. Opt. 17 (4), 040502–1 (2012).

    ADS  Article  Google Scholar 

  19. 19.

    P. Martinsen, J. Blaschke, R. Kunnenmeyer, and R. Jordan, “Accelerating Monte Carlo simulations with an NVIDIA graphics processor,” Comput. Phys. Commun. 180 (10), 1983–1989 (2009).

    ADS  Article  Google Scholar 

  20. 20.

    Q. Fang and D. A. Boas, “Monte Carlo simulation of photon migration in 3D turbid media accelerated by graphics processing units,” Opt. Express 17 (22), 20178–20190 (2009).

    ADS  Article  Google Scholar 

  21. 21.

    N. Ren, J. Liang, X. Qu, J. Li, B. Lu, and J. Tian, “GPU-based Monte Carlo Simulation for light propagation in complex heterogeneous tissues,” Opt. Express 18 (7), 6811–6823 (2010).

    ADS  Article  Google Scholar 

  22. 22.

    D. S. Efremenko, D. G. Loyola, A. Doicu, and R. J. D. Spurr, “Multi-core-CPU and GPU-accelerated radiative transfer models based on the discrete ordinate method,” Comput. Phys. Commun. 185 (12), 3079–3089 (2014).

    ADS  Article  Google Scholar 

  23. 23.

    D. Ramon, F. Steinmetz, M. Compiegne, and D. Jolivet, Massively parallel Monte-Carlo radiative transfer code on a desktop PC. pdf (last access: 1.10.2017).

    Google Scholar 

  24. 24.

    S. A. Clough, M. J. Iacono, and J. L. Moncet, “Line-byline calculations of atmospheric fluxes and cooling rates: Application to water vapor,” J. Geophys. Res., D 97, 16519–16535 (1992).

    Article  Google Scholar 

  25. 25. (lass access: 01.10.2017).

  26. 26.

    T. V. Russkova and T. B. Zhuravleva, “Optimization of sequential code for simulation of solar radiation transfer in a vertically heterogeneous environment,” Atmos. Ocean. Opt. 30 (2), 169–175 (2017).

    Article  Google Scholar 

  27. 27.

    A. D. Frank-Kamenetskii, Simulation of Neutron Trajectories in Monte Carlo Computations of Reactors (Atomizdat, Moscow, 1978) [in Russian].

    Google Scholar 

  28. 28.

    Dzh. Sanders and E. Kendrot, CUDA Technology in Examples: Introduction in Programming of Graphics Processors (DMK Press, Moscow, 2015) [in Russian].

    Google Scholar 

  29. 29.

    M. E. Zhukovskii and R. V. Uskov, “Simulation of radiative emission of electrons using hybrid supercomputers,” Vychisl. Metody Programmir. 13 (1), 271–279 (2012).

    Google Scholar 

  30. 30.

    W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery, Numerical Recipes in Fortran 77: The Art of Scientific Computing. Volume 1 of Fortran Numerical Recipes (University Press, Cambridge, 1986).

    MATH  Google Scholar 

  31. 31.

    G. Marsaglia, “Random number generators,” J. Mod. Appl. Stat. Methods 2 (1), 2–13 (2003).

    Article  Google Scholar 

  32. 32.

    A. Lee, C. Yau, M. B. Giles, A. Doucet, and C. C. Holmes, “On the utility of graphic cards to perform massively parallel simulation of advanced Monte Carlo methods,” J. Comput. Graph. Stat. 19 (4), 769–789 (2010).

    Article  Google Scholar 

  33. 33.

    G. Marsaglia, Diehard battery of tests of randomness. The Marsaglia random number (Florida State University, Department of Statistics, 1995).

    Google Scholar 

  34. 34.

    G. L. Miller, “Riemann’s hypothesis and tests for primarily,” J. Comput. Syst. Sci. 13, 300–317 (1976).

    Article  MATH  Google Scholar 

  35. 35.

    M. O. Rabin, “Probabilistic algorithm for testing primarily,” J. Number Theory 20 (1), 128–138 (1980).

    MathSciNet  Article  MATH  Google Scholar 

  36. 36.

    M. Matsumoto and T. Nishimura, “Mersenne Twister: A 623-dimensionally equidistributed uniform pseudorandom number generator,” ACM Trans. Model. Comput. Sim. 8 (1), 3–30 (1998).

    Article  MATH  Google Scholar 

  37. 37.

    M. Matsumoto and T. Nishimura, “Dynamic creation of pseudorandom number generators,” in Monte Carlo and Quasi-Monte Carlo Methods (Springer, 2000), p. 56–69.

    Google Scholar 

  38. 38.

    M. Hess, P. Koepke, and I. Schult, “Optical properties of aerosols and clouds: The software package OPAC,” Bull. Am. Meteorol. Soc. 79 (5), 831–844 (1998).

    ADS  Article  Google Scholar 

  39. 39.

    V. S. Komarov and N. Ya. Lomakina, Statistical Models of the Boundary Air Layer of Western Siberia (Publishing House IAO SB RAS, Tomsk, 2008) [in Russian].

    Google Scholar 

  40. 40.

    I. P. Mazin, A. Kh. Khrgian, and I. M. Imyaninov, Clouds and Cloudy Atmosphere (Gidrometizdat, Leningrad, 1989) [in Russian].

    Google Scholar 

  41. 41.

    G. P. Anderson, S. A. Clough, F. X. Kneizys, J. H. Chetwynd, and E. P. Shettle, Atmospheric Constituent Profiles (0–120 km) (Air Force Geophysics Laboratory, 1986).

    Google Scholar 

  42. 42.

    K. M. Firsov and A. B. Smirnov, “Representation of transmission functions by exponential series,” Atmos. Ocean. Opt. 8 (8), 659–661 (1995).

    Google Scholar 

  43. 43.

    S. D. Tvorogov, “Some aspects of the problem of representation of the absorption function by a series of exponents,” Atmos. Ocean. Opt. 7 (3), 165–172 (1994).

    Google Scholar 

  44. 44.

    J. Fischer and H. Grassl, “Detection of cloud top height from backscattered radiances within the oxygen A band. Part 1. Theoretical study,” J. Appl. Meteorol., No. 30, 1245–1259 (1991).

    ADS  Article  Google Scholar 

  45. 45.

    R. B. A. Koelemeijer, P. Stammes, J. W. Hovenier, and J. F. de Haan, “A fast method for retrieval of cloud parameters using oxygen a band measurements from the global ozone monitoring experiment,” J. Geophys. Res. 106, 3475–3490 (2001).

    ADS  Article  Google Scholar 

  46. 46.

    V. V. Badaev, M. S. Malkevich, B. Nizik, and G. Tsimmerman, “Estimation of optical parameters of the Earth’s surface, ocean, and atmosphere from INTERKOSMOC 20 and 21 satellites,” Issled. Zemli Kosmosa, No. 5, 18–29 (1985).

    Google Scholar 

  47. 47.

    Yu. M. Timofeyev, A. V. Vasilyev, and V. V. Rozanov, “Information content of the spectral measurement of the 0.76 μm O2 outgoing radiation with respect to the vertical aerosol optical properties,” Adv. Space Res. 16 (10), 91–94 (1995).

    ADS  Article  Google Scholar 

Download references

Author information



Corresponding author

Correspondence to T. V. Russkova.

Additional information

Original Russian Text © T.V. Russkova, 2017, published in Optika Atmosfery i Okeana.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Russkova, T.V. Monte Carlo Simulation of the Solar Radiation Transfer in a Cloudy Atmosphere with the Use of Graphic Processor and NVIDIA CUDA Technology. Atmos Ocean Opt 31, 119–130 (2018).

Download citation


  • Monte Carlo method
  • solar radiation fluxes
  • parallel computing
  • GPU
  • CUDA technology
  • computation speedup