GPU Accelerated MRI Reconstruction Professor Kevin Skadron Computer Science, School of Engineering and Applied Science University of Virginia, Charlottesville,

Slides:



Advertisements
Similar presentations
Automatic Data Movement and Computation Mapping for Multi-level Parallel Architectures with Explicitly Managed Memories Muthu Baskaran 1 Uday Bondhugula.
Advertisements

ENV 2006 CS4.1 Envisioning Information: Case Study 4 Focus and Context for Volume Visualization.
CSCE430/830 Computer Architecture
A NOVEL APPROACH TO SOLVING LARGE-SCALE LINEAR SYSTEMS Ken Habgood, Itamar Arel Department of Electrical Engineering & Computer Science GABRIEL CRAMER.
Institute of Medical Engineering 1 20th Annual International Conference on Magnetic Resonance Angiography Graz, Real Time Elimination of.
GPGPU Introduction Alan Gray EPCC The University of Edinburgh.
More MR Fingerprinting
Digital Signal Processing and Field Programmable Gate Arrays By: Peter Holko.
2009/04/07 Yun-Yang Ma.  Overview  What is CUDA ◦ Architecture ◦ Programming Model ◦ Memory Model  H.264 Motion Estimation on CUDA ◦ Method ◦ Experimental.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
Texture Synthesis Tiantian Liu. Definition Texture – Texture refers to the properties held and sensations caused by the external surface of objects received.
DCABES 2009 China University Of Geosciences 1 The Parallel Models of Coronal Polarization Brightness Calculation Jiang Wenqian.
CUDA Programming Lei Zhou, Yafeng Yin, Yanzhi Ren, Hong Man, Yingying Chen.
EPI – Echo Planar Imaging Joakim Rydell
Markus Strohmeier Sparse MRI: The Application of
Network coding on the GPU Péter Vingelmann Supervisor: Frank H.P. Fitzek.
Application of Digital Signal Processing in Computed tomography (CT)
Computing Platform Benchmark By Boonyarit Changaival King Mongkut’s University of Technology Thonburi (KMUTT)
GPGPU platforms GP - General Purpose computation using GPU
Principles of MRI Physics and Engineering
Digital Image Characteristic
Accelerating SQL Database Operations on a GPU with CUDA Peter Bakkum & Kevin Skadron The University of Virginia GPGPU-3 Presentation March 14, 2010.
JPEG C OMPRESSION A LGORITHM I N CUDA Group Members: Pranit Patel Manisha Tatikonda Jeff Wong Jarek Marczewski Date: April 14, 2009.
An approach for solving the Helmholtz Equation on heterogeneous platforms An approach for solving the Helmholtz Equation on heterogeneous platforms G.
GPU-accelerated Evaluation Platform for High Fidelity Networking Modeling 11 December 2007 Alex Donkers Joost Schutte.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Chapter 2 Computer Clusters Lecture 2.3 GPU Clusters for Massive Paralelism.
Challenges Bit-vector approach Conclusion & Future Work A subsequence of a string of symbols is derived from the original string by deleting some elements.
Parallelism and Robotics: The Perfect Marriage By R.Theron,F.J.Blanco,B.Curto,V.Moreno and F.J.Garcia University of Salamanca,Spain Rejitha Anand CMPS.
Extracted directly from:
Cg Programming Mapping Computational Concepts to GPUs.
Programming Concepts in GPU Computing Dušan Gajić, University of Niš Programming Concepts in GPU Computing Dušan B. Gajić CIITLab, Dept. of Computer Science.
Genetic Programming on General Purpose Graphics Processing Units (GPGPGPU) Muhammad Iqbal Evolutionary Computation Research Group School of Engineering.
Approaching the Challenge of Grid- Enabling Applications Kieran Nolan May 15 th, 2008.
Conclusions and Future Considerations: Parallel processing of raster functions were 3-22 times faster than ArcGIS depending on file size. Also, processing.
HPCLatAm 2013 HPCLatAm 2013 Permutation Index and GPU to Solve efficiently Many Queries AUTORES  Mariela Lopresti  Natalia Miranda  Fabiana Piccoli.
Computational Biology 2008 Advisor: Dr. Alon Korngreen Eitan Hasid Assaf Ben-Zaken.
GPU Architecture and Programming
Dense Image Over-segmentation on a GPU Alex Rodionov 4/24/2009.
SIGGRAPH 2011 ASIA Preview Seminar Rendering: Accuracy and Efficiency Shinichi Yamashita Triaxis Co.,Ltd.
"Distributed Computing and Grid-technologies in Science and Education " PROSPECTS OF USING GPU IN DESKTOP-GRID SYSTEMS Klimov Georgy Dubna, 2012.
Efficient Local Statistical Analysis via Integral Histograms with Discrete Wavelet Transform Teng-Yok Lee & Han-Wei Shen IEEE SciVis ’13Uncertainty & Multivariate.
 Genetic Algorithms  A class of evolutionary algorithms  Efficiently solves optimization tasks  Potential Applications in many fields  Challenges.
May 8, 2007Farid Harhad and Alaa Shams CS7080 Overview of the GPU Architecture CS7080 Final Class Project Supervised by: Dr. Elias Khalaf By: Farid Harhad.
GPU Based Sound Simulation and Visualization Torbjorn Loken, Torbjorn Loken, Sergiu M. Dascalu, and Frederick C Harris, Jr. Department of Computer Science.
Big data Usman Roshan CS 675. Big data Typically refers to datasets with very large number of instances (rows) as opposed to attributes (columns). Data.
Computer Science Department, Duke UniversityPhD Defense TalkMay 4, 2005 FAST PATTERN MATCHING IN 3D IMAGES ON GPUS Patrick Eibl, Dennis Healy, Nikos P.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Computational Platform Jim Miller GE Research.
1 GPU programming Dr. Bernhard Kainz. 2 Dr Bernhard Kainz Overview About myself Motivation GPU hardware and system architecture GPU programming languages.
Parallel processing
©Wen-mei W. Hwu and David Kirk/NVIDIA Urbana, Illinois, August 2-5, 2010 VSCSE Summer School Proven Algorithmic Techniques for Many-core Processors Lecture.
Scientific Computing Goals Past progress Future. Goals Numerical algorithms & computational strategies Solve specific set of problems associated with.
An Introduction to the Cg Shading Language Marco Leon Brandeis University Computer Science Department.
GPU, How It Works? GRAPHICS PROCESSING UNITS Hidden Surfaces Determine which surfaces should be displayed Texturing Modify each pixel colour for added.
Fermi National Accelerator Laboratory & Thomas Jefferson National Accelerator Facility SciDAC LQCD Software The Department of Energy (DOE) Office of Science.
Accelerating K-Means Clustering with Parallel Implementations and GPU Computing Janki Bhimani Miriam Leeser Ningfang Mi
Heterogeneous Processing KYLE ADAMSKI. Overview What is heterogeneous processing? Why it is necessary Issues with heterogeneity CPU’s vs. GPU’s Heterogeneous.
General Purpose computing on Graphics Processing Units
GPU Architecture and Its Application
Generalized and Hybrid Fast-ICA Implementation using GPU
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
Stencil-based Discrete Gradient Transform Using
GPU-based iterative CT reconstruction
I. E. Venetis1, N. Nikoloutsakos1, E. Gallopoulos1, John Ekaterinaris2
PowerGrid for harnessing high performance computing to reconstruct large sets of high-resolution non-Cartesian MRI data Brad Sutton Assoc Prof, Bioengineering.
Data Compression.
Real-Time Ray Tracing Stefan Popov.
Lecture 2: Intro to the simd lifestyle and GPU internals
STUDY AND IMPLEMENTATION
Presentation transcript:

GPU Accelerated MRI Reconstruction Professor Kevin Skadron Computer Science, School of Engineering and Applied Science University of Virginia, Charlottesville, VA Supported by a grant from the NSF Algorithm and Approach The current speed of MRI equipment hinders the fast acquisition of data. In order to compensate for this bottleneck, a multi-channel spiral acquisition process must be implemented. This process requires an algorithm that can recover planar data across multiple channels which can become costly as image resolution increases. Drawbacks: Reconstruction of this acquisition style is extremely computationally intense. In order to even reconstruct the data in an acceptable timeframe requires multi- thousand dollar clusters. Advantages: Spiral acquisition trajectories decrease acquisition times to realtime rates (~ 50fps in some cases). If the reconstruction time can be reduced, doctor’s will be able to diagnose patients using MRI scanners while the patient is still under examination. Certain parts of the GPU are highly optimized for calculations meaningful to MRI reconstruction. These include: Matrix operations Parallel execution of data blocks High memory-read (sometimes memory-write) bandwidth Exploiting the GPU Specific Applications to MRI Reconstruction: Combining multiple channels requires solving larger matrix systems which can be represented in arrays of “pixels” Each channel can be operated on independently as long as all channels are stored in local RAM (as textures) Project Goals Reduce monetary costs of MRI Reconstruction solutions to allow more ubiquitous use in the medical community. Reduce reconstruction time to realtime rates thereby allowing doctors to more accurately and effectively diagnose patients Exploit the new NVIDIA architecture in order to determine its capabilities and uses. Introduce new parallel computing design and programming paradigms to allow for more effective implementations of existing single-core oriented code. Sean M. Arietta New Research Aim: Exploit the parallelizability of the reconstruction technique using modern Graphics Processing Units (GPU’s), allowing:  Cheaper reconstruction solutions  Faster reconstruction  Easier maintenance By collaborating the University of Virginia Medical College, we are able to implement fast reconstruction algorithms that could one day run close to realtime. Although up until just recently a less intuitive programming practice was needed to exploit GPU architecture, the release of NVIDIA’s CUDA platform has allowed for easier implementation. Overview: Data for each channel is sent to the processing unit as frequencies derived from the response of human tissue to varied EM fields. The data is acquired in a spiral pattern and must be transformed into Cartesian coordinates before processing can begin. Each sampled point from this spirally acquired dataset is accumulated to a point in the normal 2D Cartesian grid. Now the data is in “k-space” or the space within which frequencies are encoded. A system of linear equations is built from each channel and solved to return the fully stitched image, still in k-space. Finally, the stitched image is transformed from k-space to the spatial domain to recover the imaged subject.