| Literature DB >> 23243572 |
Qianqian Fang1, David R Kaeli.
Abstract
In this report, we discuss the use of contemporary ray-tracing techniques to accelerate 3D mesh-based Monte Carlo photon transport simulations. Single Instruction Multiple Data (SIMD) based computation and branch-less design are exploited to accelerate ray-tetrahedron intersection tests and yield a 2-fold speed-up for ray-tracing calculations on a multi-core CPU. As part of this work, we have also studied SIMD-accelerated random number generators and math functions. The combination of these techniques achieved an overall improvement of 22% in simulation speed as compared to using a non-SIMD implementation. We applied this new method to analyze a complex numerical phantom and both the phantom data and the improved code are available as open-source software at http://mcx.sourceforge.net/mmc/.Entities:
Keywords: (170.3660) Light propagation in tissues; (170.5280) Photon migration; (170.7050) Turbid media
Year: 2012 PMID: 23243572 PMCID: PMC3521306 DOI: 10.1364/BOE.3.003223
Source DB: PubMed Journal: Biomed Opt Express ISSN: 2156-7085 Impact factor: 3.732
Fig. 1Subroutine-level profiling for mesh-based MC simulation (a) without SSE, (b) with Havel & Herout’s SSE-based algorithm, and (c) with additional SSE-enabled math library and RNG. The area and percentage in each block represent the run-time for each subroutine normalized by the total run-time of case (a). If a block is enclosed by another, its percentage contributes to that of the enclosing block. Profiling is performed within a single thread.
Fig. 2A tetrahedral mesh generated from the Digimouse atlas. Different colors represent different tissue types.
Simulation run-times (in seconds) for various ray-tracers.
| Methods | Plücker | H&H | Badouel | Branch-less Badouel |
|---|---|---|---|---|
| Ray-tracing (s) | 65.00 | 33.18 | 24.21 | 18.88 |
| Overall (s) | 155.65 | 121.48 | 110.18 | 81.92 |
with SSE-enabled math and RNG functions;
estimated from the profiling outputs.