Analyzing Parallel Programming Models for Magnetic Resonance Imaging

The last several decades have been marked by dramatic increases in the use of diagnostic medical imaging and improvements in the modalities themselves. As such, more data is being generated at an ever increasing rate. However, in the case of Magnetic Resonance Imaging (MRI) analysis and reports remain semi-quantitative, despite reported advantages of quantitative analysis (QA), due to prohibitive execution times. We present a collaborator’s QA algorithm for Dynamic Contrast-Enhanced (DCE) MRI data written in MATLAB as a case study for exploring parallel programming in MATLAB and Julia. Parallelization resulted in a 7.66x speedup in MATLAB and a 72x speedup in Julia. To the best of our knowledge, this comparison of Julia’s performance in a parallel, application-level program is novel. On the basis of these results and our experiences while programming in each language, our collaborator now prototypes in MATLAB and then ports to Julia when performance is critical.

[1]  Laurie J. Hendren,et al.  Kind analysis for MATLAB , 2011, OOPSLA '11.

[2]  Laurie J. Hendren,et al.  Taming MATLAB , 2012, OOPSLA '12.

[3]  Alan Edelman,et al.  Julia: A Fast Dynamic Language for Technical Computing , 2012, ArXiv.

[4]  Jun Li,et al.  McLab: an extensible compiler toolkit for MATLAB and related languages , 2010, C3S2E '10.

[5]  David A. Padua,et al.  MaJIC: compiling MATLAB for speed and responsiveness , 2002, PLDI '02.

[6]  Keshav Pingali,et al.  A case for source-level transformations in MATLAB , 1999, DSL '99.

[7]  Xu Li,et al.  Mc2FOR: A tool for automatically translating MATLAB to FORTRAN 95 , 2014, 2014 Software Evolution Week - IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE).

[8]  David A. Padua,et al.  Techniques for the translation of MATLAB programs into Fortran 90 , 1999, TOPL.

[9]  D. Miglioretti,et al.  Rising use of diagnostic medical imaging in a large integrated health system. , 2008, Health affairs.

[10]  Sheila Weinmann,et al.  Use of diagnostic imaging studies and associated radiation exposure for patients enrolled in large integrated health care systems, 1996-2010. , 2012, JAMA.

[11]  Henning Müller,et al.  Using MapReduce for Large-Scale Medical Image Analysis , 2012, 2012 IEEE Second International Conference on Healthcare Informatics, Imaging and Systems Biology.

[12]  J P B O'Connor,et al.  Dynamic contrast-enhanced imaging techniques: CT and MRI. , 2011, The British journal of radiology.

[13]  Jeffrey C. Carver,et al.  Understanding the High-Performance-Computing Community: A Software Engineer's Perspective , 2008, IEEE Software.

[14]  Christine A. Orengo,et al.  Protein function prediction using domain families , 2013, BMC Bioinformatics.

[15]  Ken Kennedy,et al.  Optimizing strategies for telescoping languages: procedure strength reduction and procedure vectorization , 2001, ICS '01.

[16]  Laurie J. Hendren,et al.  Optimizing Matlab through Just-In-Time Specialization , 2010, CC.

[17]  G. Parker,et al.  DCE-MRI biomarkers in the clinical evaluation of antiangiogenic and vascular disrupting agents , 2007, British Journal of Cancer.

[18]  Laurie J. Hendren,et al.  Refactoring MATLAB , 2013, CC.

[19]  María J. Ledesma-Carbayo,et al.  DCE@urLAB: a dynamic contrast-enhanced MRI pharmacokinetic analysis tool for preclinical data , 2013, BMC Bioinformatics.

[20]  Stephen C. Ekker,et al.  Mojo Hand, a TALEN design tool for genome editing applications , 2013, BMC Bioinformatics.

[21]  Xia Li,et al.  DCEMRI.jl: a fast, validated, open source toolkit for dynamic contrast enhanced MRI analysis , 2015, PeerJ.

[22]  Efstratios Gallopoulos,et al.  A MATLAB Compiler and Restructurer for the Development of Scientific Libraries and Applications , 1995 .

[23]  Volker Schmid,et al.  Quantitative Analysis of Dynamic Contrast-Enhanced and Diffusion-Weighted Magnetic Resonance Imaging for Oncology in R , 2011 .

[24]  Thomas E. Yankeelov,et al.  Predicting response before initiation of neoadjuvant chemotherapy in breast cancer using new methods for the analysis of dynamic contrast enhanced MRI (DCE MRI) data , 2016, SPIE Medical Imaging.

[25]  Gaurav Sharma,et al.  MATLAB®: A Language for Parallel Computing , 2009, International Journal of Parallel Programming.

[26]  Alan Edelman,et al.  Julia: A Fresh Approach to Numerical Computing , 2014, SIAM Rev..