Accelerating Monte Carlo Simulations with an NVIDIA Graphics Processor
Modern graphics cards, commonly used in desktop computers, have evolved beyond asimple interface between processor and display to incorporate sophisticated calculationengines that can be applied to general purpose computing. The Monte Carlo algorithm formodelling photon transport in turbid media has been implemented on an NVIDIA®8800GT graphics card using the CUDA toolkit. The Monte Carlo method relies on following the trajectory of millions of photons through the sample, often taking hours ordays to complete. The graphics-processor implementation, processing roughly 110 millionscattering events per second, was found to run more than 70 times faster than a similar,single-threaded implementation on a 2.67 GHz desktop computer. Program Summary Manuscript title:Accelerating Monte Carlo Simulations with an NVIDIAGraphics ProcessorAuthors:Paul Martinsen, Johannes Blaschke, Rainer Künnemeyer,Bob JordanProgram title:Phoogle-C/ Phoogle-GLicensing provisions:The random number library used has a LGPL license.Programming language:C++ Computer(s) for which theprogram has been designed:Designed for Intel PC’s. Phoogle-G requires a NVIDIAgraphics card with support for CUDA 1.1Operating system(s) for whichthe program has beendesigned: Windows XPRAM required to execute withtypical data: 1GBHas the code been vectorisedor parallelized?:Phoogle-G is written for SIMD architectures.Number of processors used: 1Supplementary material:n/aKeywords:Monte Carlo photon transport, Scattering media, Generalpurpose graphics card computing, parallel computingPACS:87.10.Rt, 33.80.GjCPC Library Classification:21.1 Radiation PhysicsExternal routines/librariesused:Charles Karney Random number library Microsoft Foundation Class libraryNVIDA CUDA library [1]CPC Program Librarysubprograms used:n/a Nature of problem The Monte Carlo technique is an effective algorithm for exploring the propagation of lightin turbid media. However, accurate results require tracing the path of many photonswithin the media. The independence of photons naturally lends the Monte Carlo techniqueto implementation on parallel architectures. Generally, parallel computing can beexpensive, but recent advances in consumer grade graphics cards have opened thepossibility of high-performance desktop parallel-computing. Solution method In this pair of programmes we have implemented the Monte Carlo algorithm described byPrahl et al. [2] for photon transport in infinite scattering media to compare theperformance of two readily accessible architectures: a standard desktop PC and aconsumer grade graphics card from NVIDIA. Restrictions The graphics card implementation uses single precision floating point numbers for allcalculations. Only photon transport from an isotropic point-source is supported. Thegraphics-card version has no user interface. The simulation parameters must be set in thesource code. The desktop version has a simple user interface; however some propertiescan only be accessed through an ActiveX client (such as Matlab).
processor comparison test, graphic card comparison test, nvidia chipset processor comparison test, phoogle g
0 comments:
Post a Comment