GPU Monte Carlo
Conventional CPU-based Monte Carlo simulation are very time consuming, limiting the applicability and practical value of Monte Carlo methods. In order to push our research forward, we are increasing our use of MC. In order to reduce simulation time, we are starting to use graphical processing units (GPUs). This step will render more advanced simulations feasible, as well as making MC more useful in general. Some of our simulations require weeks of simulation on a standard CPU, and we have found that GPU-based MC can reduce the simulation time significantly.
In order to promote the use of GPUs for photon migration simulations, you are free to download our code for GPU-based Monte Carlo. Currently we have two sets of code to offer:
CUDAMCML
CUDAMCML updated 2009-07-06! Including performance boost, Linux makefile etc.
CUDAMCML is a software for Monte Carlo simulation of photon migration in multilayered media. The code is designed to solve the same problems as the original MCML as written by Wang and Jacques. While MCML is run sequentially on a CPU, CUDAMCML is executed on a graphics processing unit, taking advantage of the parallelism of photon migration Monte Carlo.
The CUDAMCML package contains Windows executables, source code and documentation. Please note that this is an early version of CUDAMCML and we refer to the documentation for details on implementation and deviations from MCML. The documentation is also available separately here.
Time-resolved MC in a semi-infinite geometry
We also offer the CUDA based Monte Carlo code used in our Journal of Biomedical Optics letter. This code simulates time-resolved photon migration in a semi-infinite and homogenously scattering material. This code is provided without documentation but may serve as a good and simple example of GPGPU Monte Carlo simulations of photon migration.
Publications
Parallel computing with graphics processing units for high speed Monte Carlo simulation of photon migration
E. Alerstam, T. Svensson, and S. Andersson-Engels
J. Biomedical Optics Letters 13, 060504 (2008)
External links
- GPGPU in focus at www.gpgpu.org
- Parallel random number generation by Steven Gratton
- Experiences on GPGPU and CUDA in cosmology by Steven Gratton
- The CUDA zone at NVIDIA (forums and numerous GPGPU application examples)