Functional magnetic resonance imaging (fMRI) makes it possible to non-invasively measure brain activity with high spatial resolution. There are however a number of issues that have to be addressed. One is the large amount of spatio-temporal data that needs to be processed. In addition to the statistical analysis itself, several preprocessing steps, such as slice timing correction and motion compensation, are normally applied. The high computational power of modern graphic cards has already successfully been used for MRI and fMRI. Going beyond the first published demonstration of GPU-based analysis of fMRI data, all the preprocessing steps and two statistical approaches, the general linear model (GLM) and canonical correlation analysis (CCA), have been implemented on a GPU. For an fMRI dataset of typical size (80 volumes with 64 × 64 × 22 voxels), all the preprocessing takes about 0.5 s on the GPU, compared to 5 s with an optimized CPU implementation and 120 s with the commonly used statistical parametric mapping (SPM) software. A random permutation test with 10,000 permutations, with smoothing in each permutation, takes about 50 s if three GPUs are used, compared to 0.5–2.5 h with an optimized CPU implementation. The presented work will save time for researchers and clinicians in their daily work and enables the use of more advanced analysis, such as non-parametric statistics, both for conventional fMRI and for real-time fMRI.
We describe how to perform preprocessing and statistical analysis of fMRI data on the GPU. An fMRI dataset of the resolution 64 × 64 × 22 × 80 is preprocessed and analyzed in 0.5 s. Non-parametric tests of fMRI data become practically feasible by using the GPU. GPUs are required to handle the future increase in spatial and temporal resolution. GPUs enable more advanced real-time analysis.
The small and the large lowpass filter. For visualization purposes, these filters have a higher resolution than the filters that are actually used to smooth the fMRI slices.
The three anisotropic filters that can be linearly combined to a filter with arbitrary orientation. Note that these filters are Cartesian non-separable. For visualization purposes, these filters have a higher resolution than the filters that actually are used to smooth the fMRI slices.
The figure shows how an implausible filter (left) is adjusted to a plausible filter in two steps. First, the anisotropic filter weights are adjusted such that they all are positive (middle), and then the small lowpass filter is added (right). If a resulting filter has two directions, the direction corresponding to the largest absolute filter coefficients is preserved.
Anders Eklund, Mats Andersson, Hans Knutsson. fMRI analysis on the GPU – Possibilities and challenges. Computer Methods and Programs in Biomedicine, Volume 105, Issue 2, February 2012, Pages 145–161. [doi: 10.1016/j.cmpb.2011.07.007]