1. A streaming multi-GPU implementation of image simulation algorithms for scanning transmission electron microscopy
- Author
-
Colin Ophus, Jianwei Miao, and Alan Pryor
- Subjects
Image formation ,PRISM ,Computer science ,GPU ,FOS: Physical sciences ,Bioengineering ,CUDA ,02 engineering and technology ,01 natural sciences ,Computational science ,Computer graphics (images) ,0103 physical sciences ,Microscopy ,Scanning transmission electron microscopy ,lcsh:QD901-999 ,Chemical Engineering (miscellaneous) ,Electron scattering ,Radiology, Nuclear Medicine and imaging ,Multislice ,lcsh:Science (General) ,010306 general physics ,Spectroscopy ,ComputingMethodologies_COMPUTERGRAPHICS ,computer.programming_language ,Methodology ,Computational Physics (physics.comp-ph) ,Python (programming language) ,021001 nanoscience & nanotechnology ,Supercomputer ,Atomic electron tomography ,Imaging simulation ,Electron tomography ,physics.comp-ph ,High performance computing ,lcsh:Crystallography ,0210 nano-technology ,Physics - Computational Physics ,computer ,lcsh:Q1-390 - Abstract
Simulation of atomic-resolution image formation in scanning transmission electron microscopy can require significant computation times using traditional methods. A recently developed method, termed plane-wave reciprocal-space interpolated scattering matrix (PRISM), demonstrates potential for significant acceleration of such simulations with negligible loss of accuracy. Here, we present a software package called Prismatic for parallelized simulation of image formation in scanning transmission electron microscopy (STEM) using both the PRISM and multislice methods. By distributing the workload between multiple CUDA-enabled GPUs and multicore processors, accelerations as high as 1000 × for PRISM and 15 × for multislice are achieved relative to traditional multislice implementations using a single 4-GPU machine. We demonstrate a potentially important application of Prismatic, using it to compute images for atomic electron tomography at sufficient speeds to include in the reconstruction pipeline. Prismatic is freely available both as an open-source CUDA/C++ package with a graphical user interface and as a Python package, PyPrismatic.
- Published
- 2017
- Full Text
- View/download PDF