Abstract

Optimizing light delivery for photodynamic therapy, quantifying tissue optical properties or reconstructing 3D distributions of sources in bioluminescence imaging and absorbers in diffuse optical imaging all involve solving an inverse problem. This can require thousands of forward light propagation simulations to determine the parameters to optimize treatment, image tissue or quantify tissue optical properties, which is time-consuming and computationally expensive. Addressing this problem requires a light propagation simulator that produces results quickly given modelling parameters. In previous work, we developed FullMonteSW: currently the fastest, tetrahedral-mesh, Monte Carlo light propagation simulator written in software. Additional software optimizations showed diminishing performance improvements, so we investigated hardware acceleration methods. This work focuses on FullMonteCUDA: a GPU-accelerated version of FullMonteSW which targets NVIDIA GPUs. FullMonteCUDA has been validated across several benchmark models and, through various GPU-specific optimizations, achieves a 288-936x speedup over the single-threaded, non-vectorized version of FullMonteSW and a 4-13x speedup over the highly optimized, hand-vectorized and multi-threaded version. The increase in performance allows inverse problems to be solved more efficiently and effectively.

Highlights

  • Using light in medical procedures is generally low cost, safe for patients and has simple monitoring options

  • For FullMonteCUDA, we evaluated compute times on both an NVIDIA Quadro P5000 and Titan Xp GPU

  • This paper described FullMonteCUDA, which has been validated and benchmarked against various existing Monte Carlo (MC) light propagation simulators

Read more

Summary

Introduction

Using light in medical procedures is generally low cost, safe for patients and has simple monitoring options. The light emitted at the subject’s exterior surface can be quantified, but simulations are required to find the location and size of the collection of light-emitting cells based on the detected BLI photon distribution. This method is currently being used in a laboratory setting to track the size and location of cancerous tissues in pre-clinical treatment studies [2]. Given a sufficiently high number of random samples, the light propagation simulator will converge to a statistically correct result For both PDT and BLI, it is necessary to solve the inverse problem. FullMonteCUDA can be downloaded as part of the open-source FullMonte project from www.fullmonte.org

Background
GPU programming using the NVIDIA CUDA development platform
Previous work
TIM-OS
Powell and Leung
Overview
Optimizations
Launching packets in the host
Vector datatypes and math operations
Constant materials caching
Local accumulation buffers
Features
Validation
Results
GPU profiling
Conclusion

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.