CUDA Spotlight: Dylan Jackson

Dylan Jackson

GPU-Accelerated Model Fitting of Interferometric Imagery for Label-Free Biosensing

This week's Spotlight is on Dylan Jackson of MIT Lincoln Laboratory. Previous to joining MIT-LL, Dylan was a student at Boston University working in the area of optical bionsensors.

His master's degree project (Fall 2012) explored the application of GPU computing to the LED-based Interferometric Reflectance Imaging Sensor (IRIS) system.

This interview is part of the CUDA Spotlight Series.

Q & A with Dylan Jackson

NVIDIA: Dylan, tell us about your master's degree project ("Improved Performance of CaFE and IRIS Model Fitting Using CUDA").
Dylan: The understanding of disease progression relies upon the presence, absence, or relative amount of proteins within a solution. One technique to get a “snapshot” of the protein levels is called microarrays. A microarray consists of adhering capture probes, which will specifically “stick” to the target proteins, on the surface of a slide. A biosensor is then used to detect the number of target proteins that attach to each the capture probe spot.

Illustration of a microarray on an IRIS slide (by Alex Reddington)
Illustration of a microarray on an IRIS slide (by Alex Reddington)

Optical biosensors are known to be accurate and reliable tools for measuring and monitoring the binding and unbinding of target proteins. Recently, new techniques and technologies have emerged to enable high-throughput biosensing with smaller, lower cost, and less complex systems.

In particular, the LED-based Interferometric Reflectance Imaging Sensor (IRIS) has been demonstrated as a viable alternative to previously established high-end biosensors. The IRIS technique utilizes optical interference on a silicon dioxide on silicon slide to directly image and measure the protein density on the surface with a high degree of precision.

Micro-Cal version of LED-IRIS developed at the Optical Characterization and Nanophotonics (OCN) Laboratory at Boston University
Micro-Cal version of LED-IRIS developed at the Optical Characterization and Nanophotonics (OCN) Laboratory at Boston University

While IRIS enables high-throughput detection, new processing challenges were introduced as a result of measures to reduce cost and increase robustness. In particular, the use of LEDs instead of a tunable laser greatly increases the computational complexity of the reflectance model.

We are using the Levenberg-Marquardt algorithm for fitting the data to a reflectance model. Since this is an iterative algorithm, increasing the complexity of the model compounds the processing power and time required for convergence. The pixel-based nature of the data lent itself well to data level parallelism, so it was natural to explore single instruction, multiple data (SIMD) architectures to improve processing performance.

Since CUDA enables parallel computing on GPUs it seemed to be an ideal platform for exploiting data level parallelism on a single computer. For this project, I developed a CUDA implementation of the IRIS model, yielding significant performance improvements over the current MATLAB implementation.

NVIDIA: Talk about key challenges in the field of biosensors.
Dylan: In the big picture surrounding this work, a major challenge for medical devices has frequently been expanding access to everyone by reducing the cost and complexity of the tests. That is, making technology affordable and stable enough to get it outside of sophisticated laboratory environments and into the hands of people who don't have access to high-end medical facilities or extensive technological resources.

On the technical side, many current technologies can detect how much molecular binding occurs on the microarray, but this comes without knowledge of how much probe material initially existed on any given node. For example, one spot could show very little binding but there would be no way to tell how many probe molecules were there to begin with. Was there 100% binding to very few probes or 0.01% binding to a great number of probes? IRIS can be used to measure the amount of probe material to yield more accurate results.

Switching IRIS from using a tunable laser to LEDs was an important step in the direction of reducing cost and improving reliability, but the increase in model complexity significantly increased the computational requirements. A computing grid took 15 to 20 minutes to iteratively fit a single multi-spectral image stack to the reflectance model. A single computer would need a whole day to do the same processing. If you want to perform rapid diagnosis in a remote area, you may only have access to one or two computers. In that situation you can’t afford to tie up a computer for an entire day just to process a single sensor.

NVIDIA: What made you decide to look at CUDA?
Dylan: Looking at the LED-IRIS fitting problem, it was immediately apparent that a parallel computing approach would be an excellent fit. The same process is executed on each spectral pixel “stack,” which is really just another way to say “Single Instruction Multiple Data.”

I reasoned that a GPU would be an economical way to solve the processing time and resource problem by acting as a coprocessor to the CPU. This would free up local CPU resources for other operations while taking advantage of parallel computing hardware, and better yet, it would only require a single computer.

NVIDIA: In what specific ways did you leverage CUDA?
Dylan: For the LED-IRIS processing, I made heavy use of the shared memory and register spaces to store results of intermediate calculations. The reflectance model calculation, which is done repeatedly for non-linear fitting, was split up into each individual step and carefully managed in memory. I manually determined an efficient method of moving results between registers and shared memory, reusing those blocks as much as possible in order to prevent local memory usage, which had a huge impact on performance. It was helpful to have the increased register count in the Kepler architecture for this optimization.

One potential problem with applying CUDA to iteratively fitting multiple point sets is that each pixel could converge to a fit on a different iteration. If a thread is assigned to each pixel – an intuitive execution configuration for image processing – resources can be wasted processing completed pixels due to warp granularity. I found that assigning a block to each pixel allowed me to efficiently perform the necessary calculations for fitting, while quickly skipping over pixels that had already been flagged as converged.

NVIDIA: What are some potential real-world applications of LED-IRIS?
Dylan: LED-IRIS could be utilized as both a pharmaceutical research and rapid diagnosis tool. For drug development applications it could be used to monitor molecular binding over time for kinetic information. As a diagnostic tool, one could envision treating a microarray of antibodies with serum and determining which antigens are present in the blood based on where binding occurs.

NVIDIA: What are you working on at MIT Lincoln Laboratory?
Dylan: Right now I primarily work with emerging technology centered on infrared imaging systems, particularly long-wave infrared. Before that I developed small, low-power, wireless sensor nodes.

NVIDIA: How did you become interested in this field?
Dylan: I became enthralled with computers at a young age, and was an avid gamer throughout high school and college.  I spent a long time playing Call of Duty and Baldur’s Gate II, just to name a couple. I remember buying my first GPU – a 64 MB GeForce card – so that my computer could handle Neverwinter Nights. A fascination with my high school physics classes led me to pursue electrical engineering. I had been aware of CUDA during college, but it wasn’t until I started working that I decided to learn about it simply because I thought it might be useful. A few months later I ended up in contact with Professor Selim Ünlü's IRIS team at Boston University and things fell into place quite nicely.

NVIDIA: Tell us about your band, Remedy Transmission.
Dylan: Remedy Transmission is a Boston-based progressive rock band heavily influenced by acts such as Porcupine Tree, Opeth, and Radiohead in which I play bass and sing backup vocals. We have a full-length album recorded and are currently auditioning lead vocalists to get moving toward releasing the material.

Bio for Dylan Jackson

Dylan currently works full time at MIT Lincoln Laboratory and plays in an original progressive rock band in his free time. His M.S. concentration was in electromagnetics and photonics. At MIT-LL he began developing low power, wireless sensor nodes. His work has since shifted to the development of advanced optical (MWIR, LWIR) systems and CUDA programming for real-time image processing. He holds B.S. and M.S. degrees from Boston University.

Relevant Links
Boston University Optical Characterization and Nanophotonics Lab
Boston University Master's Project
IRIS (Biosensor) Wikipedia Page

Contact Info
jacksondylan (at) gmail (dot) com