1 / 12

Simulation of Microwave Induced Thermoacoustic Imaging Model using GPU

Simulation of Microwave Induced Thermoacoustic Imaging Model using GPU. Nilangshu Bidyanta Ramaprasad Kulkarni ECE 562 Term Project. Project Overview. Introduction

tauret
Download Presentation

Simulation of Microwave Induced Thermoacoustic Imaging Model using GPU

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Simulation of Microwave Induced Thermoacoustic Imaging Model using GPU NilangshuBidyanta Ramaprasad Kulkarni ECE 562 Term Project

  2. Project Overview • Introduction Figure: Schematic model (a) side view (the longer transverse dimension of the waveguide lies on the x-axis.) and (b) top view. Figure taken from reference [1].

  3. Project Overview • Motivation • Hypothesis • Project goals

  4. Methodology • Implementation of PSTD paper [Ref 1] • Existing Matlab code, wrote C++ code using CUDA

  5. Methodology • Code analysis: A simplified version of the PSTD implementation can be written as follows: for(i=0; i<2000; i++) { Bx[i] = a*(Bx[i-1] + Bx[i-2] + Bx[i-3]) – b*myFunc(Cx[i-1], Cx[i-2], Cx[i-3]); Bx[i-3] = Bx[i-2]; Bx[i-2] = Bx[i-1]; Bx[i-1] = Bx[i]; . . Cx[i] = a*(Cx[i-1] + Cx[i-2] + Cx[i-3]) – b*myFunc(Bx[i-1], Bx[i-2], Bx[i-3]); Cx[i-3] = Cx[i-2]; Cx[i-2] = Cx[i-1]; Cx[i-1] = Cx[i]; . . } • In each iteration, the set of four equations for Bx is repeated for By and Bz and similarly for Cy and Cz. Also, the function ‘myFunc’ has FFT and IFFT computations.

  6. Results and Discussions • Observed speedup w.r.t Matlab code • 11.84x speedup for GPU vs Matlab (2 core) • 2.68x speedup for GPU vs Matlab (6 core) • Due to significant amount of data transfers, the GPU speedup vsMutlicore machine is not significant. • Matlab was run on a 6-core Intel i7 machine and 2-core Intel Core 2 Duo machine runningWindows 7, 64-bit OS. • GPU code was run on a 4-core Intel Xeon machine running Linux 64-bit OS.

  7. Results and Discussions

  8. Results and Discussions

  9. Results and Discussions • Limitation for further speedup is • Loop-carried dependency • Data intensive rather than computation intensive • Memory requirement increases exponentially • For 320x320x320 matrix, out of 3000ms for each iteration, around 2000ms is taken for data transfer • Data transfer time is significant compared to computation time.

  10. Lessons learnt • Access to entire code, potential for further speedup • Serial computation on CPU can be improved by parallelizing the code to utilize multiple cores.

  11. References • Wang, X.; Bauer, D. R.; Witte, R.; Xin, H., "Microwave-Induced Thermoacoustic Imaging Model for Potential Breast Cancer Detection," IEEE Transactions onBiomedical Engineering, vol.59, no.10, pp.2782-2791, Oct. 2012. doi: 10.1109/TBME.2012.2210218. • NVIDIA Corp. 2007. NVIDIA CUDA Compute Unified device architecture programming guide 1.1. Technical report, NVIDA, Santa Clara, CA

  12. Questions Thank you

More Related