Parallel, distributed and GPU computing technologies in single-particle electron microscopy (original) (raw)

Exploiting desktop supercomputing for three-dimensional electron microscopy reconstructions using ART with blobs

Journal of Structural Biology, 2009

Multi-threading Multi-core Three-dimensional electron microscopy Single particle electron microscopy ART a b s t r a c t Three-dimensional electron microscopy allows direct visualization of biological macromolecules close to their native state. The high impact of this technique in the structural biology field is highly correlated with the development of new image processing algorithms. In order to achieve subnanometer resolution, the size and number of images involved in a three-dimensional reconstruction increase and so do computer requirements. New chips integrating multiple processors are hitting the market at a reduced cost. This high-integration, low-cost trend has just begun and is expected to bring real supercomputers to our laboratory desktops in the coming years. This paper proposes a parallel implementation of a computation-intensive algorithm for three-dimensional reconstruction, ART, that takes advantage of the computational power in modern multicore platforms. ART is a sophisticated iterative reconstruction algorithm that has turned out to be well suited for the conditions found in threedimensional electron microscopy. In view of the performance obtained in this work, these modern platforms are expected to play an important role to face the future challenges in three-dimensional electron microscopy.

DoG Picker and TiltPicker: Software tools to facilitate particle selection in single particle electron microscopy

Journal of Structural Biology, 2009

Solving the structure of macromolecular complexes using transmission electron microscopy can be an arduous task. Many of the steps in this process rely strongly on the aid of pre-existing structural knowledge, and are greatly complicated when this information is unavailable. Here we present two software tools meant to facilitate particle picking, an early stage in the single-particle processing of unknown macromolecules. The first tool, DoG Picker, is an efficient and reasonably general, particle picker based on the Difference of Gaussians (DoG) image transform. It can function alone, as a reference-free particle picker with the unique ability to sort particles based on size, or it can also be used as a way to bootstrap the creation of templates or training datasets for other particle pickers. The second tool is TiltPicker, an interactive graphical interface application designed to streamline the selection of particle pairs from tilted-pair datasets. In many respects, TiltPicker is a reimplementation of the SPIDER WEB tilted-particle picker, but built on modern computer frameworks making it easier to deploy and maintain. The TiltPicker program also includes several useful new features beyond those of its predecessor.

LiberTEM: Software platform for scalable multidimensional data processing in transmission electron microscopy

Journal of Open Source Software

Increases in the data rates of detectors for electron microscopy (EM) have outpaced increases in network, mass storage and memory bandwidth by two orders of magnitude between 2009 and 2019 (Weber, 2018). The LiberTEM open source platform (Clausen et al., 2020) is designed to match the growing performance requirements of EM data processing (Weber, Clausen, & Dunin-Borkowski, 2020). Motivation The data rate of the fastest detectors for electron microscopy that are available in 2019 exceeds 50 GB/s, which is faster than the memory bandwidth of typical personal computers (PCs) at this time. Applications from ten years before that ran smoothly on a typical PC have evolved into numerical analysis of complex multidimensional datasets (Ophus, 2019) that require distributed processing on high-performance systems. Furthermore, electron microscopy is interactive and visual, and experiments performed inside electron microscopes (so-called in situ experiments) often rely on fast on-line data processing as the experimental parameters need to be adjusted based on the observation results. As a consequence, modern data processing systems for electron microscopy should be designed for very high throughput in combination with short response times for interactive GUI use and closed-loop feedback. That requires fundamental changes in the architecture and programming model, and consequently in the implementation of algorithms and user interfaces for electron microscopy applications.

XMIPP: a new generation of an open-source image processing package for electron microscopy

X-windows based microscopy image processing package (Xmipp) is a specialized suit of image processing programs, primarily aimed at obtaining the 3D reconstruction of biological specimens from large sets of projection images acquired by transmission electron microscopy. This public-domain software package was introduced to the electron microscopy field eight years ago, and since then it has changed drastically. New methodologies for the analysis of single-particle projection images have been added to classification, contrast transfer function correction, angular assignment, 3D reconstruction, reconstruction of crystals, etc. In addition, the package has been extended with functionalities for 2D crystal and electron tomography data. Furthermore, its current implementation in C++, with a highly modular design of well-documented data structures and functions, offers a convenient environment for the development of novel algorithms. In this paper, we present a general overview of a new generation of Xmipp that has been re-engineered to maximize flexibility and modularity, potentially facilitating its integration in future standardization efforts in the field. Moreover, by focusing on those developments that distinguish Xmipp from other packages available, we illustrate its added value to the electron microscopy community.

Probing biomolecular machines with graphics processors

Communications of the ACM, 2009

Computer simulation has become an integral part of the study of the structure and function of biological molecules. For years, parallel computers have been used to conduct these computationally demanding simulations and to analyze their results. These simulations function as a "computational microscope," allowing the scientist to observe details of molecular processes too small, fast, or delicate to capture with traditional instruments. Over time, commodity GPUs (graphics processing units) have evolved into massively parallel computing devices, and more recently it has become possible to program them in dialects of the popular C/C++ programming languages.

Bsoft: Image processing and molecular modeling for electron microscopy

Journal of Structural Biology, 2007

Bsoft is a software package written for image processing of electron micrographs, interpretation of reconstructions, molecular modeling, and general image processing. The code is modularized to allow for rapid testing and deployment of new processing algorithms, while also providing sufficient infrastructure to deal with many file formats and parametric data. The design is deliberately open to allow interchange of information with other image and molecular processing software through a standard parameter file (currently a text-based encoding of parameters in the STAR format) and its support of multiple image and molecular formats. It also allows shell scripting of processes and allows subtasks to be distributed across multiple computers for concurrent processing. Bsoft has undergone many modifications and advancements since its initial release [Heymann, J.B., 2001. Bsoft: image and molecular processing in electron microscopy. J. Struct. Biol. 133,[156][157][158][159][160][161][162][163][164][165][166][167][168][169]. Much of the emphasis is on single particle analysis and tomography, and sufficient functionality is available in the package to support most needed operations for these techniques. The key graphical user interface is the program bshow, which displays an image and is used for many interactive purposes such as fitting the contrast transfer function or picking particles. Bsoft also offers various tools to manipulate atomic structures and to refine the fit of a known molecular structure to a density in a reconstruction. Published by Elsevier Inc.

Rapid routine structure determination of macromolecular assemblies using electron microscopy: current progress and further challenges

Journal of Synchrotron Radiation, 2004

Although the methodology of molecular microscopy has enormous potential, it is time consuming and labor intensive. The techniques required to produce a three dimensional (3D) electron density map of a macromolecular structure normally require manual operation of an electron microscope by a skilled operator and manual supervision of the sometimes complex software needed for analysis and calculation of 3D maps. We are developing systems to automate the process of data acquisition from an electron microscope and integrating these systems with specimen handling operations and post acquisition data processing. We report here on the current performance of our existing systems and the future challenges involved in substantially improving both the sustained throughput and the yield of automated data collection and analysis.

Accelerating Protein Structure Recovery Using Graphics Processing Units

Lecture Notes in Computer Science, 2005

Graphics processing units (GPUs) have evolved to become powerful, programmable vector processing units. Furthermore, the maximum processing power of current generation GPUs is technically superior to that of current generation CPUs (central processing units), and that power is doubling approximately every nine months, about twice the rate of Moore's law. This research represents the first successful application of GPU vector processing to an existing scientific computing software package, specifically an application for computing the tertiary (3D) geometric structures of protein molecules from x-ray crystallography data. A framework for applying GPU parallel processing to other computational tasks is developed and discussed, and an example of the benefits of taking advantage of the visualization potential of newer GPUs in scientific computing is presented.