Abstract
Unacceptable execution time of Non-rigid registration (NRR) often presents amajor obstacle to its routine clinical use. Parallel computing is aneffective way to accelerate NRR. However, development of efficient parallelNRR codes is a very challenging task. One desirable approach is to map theexisting sequential algorithm to the parallel architecture to gain speedupinstead of designing a new parallel algorithm. Multicores and GPU provide usa cooperative architecture, in which both Single Instruction Multiple Data(SIMD) and Single Program Multiple Data (SPMD) programming models can co-existand complement each other. We present a method to parallelize aNRR on this cooperative architecture. Our approach is first to separate thesequential algorithm into regular and irregular parts. We then map the regularpart on GPU following SIMD paradigm and irregular part on multicores in a SPMD fashion. Unlike the approaches that use multicores orGPU alone, our approach leads to desirable speedup for the whole applicationby taking advantage of all components of the cooperative parallelarchitecture, for all individual parts of the application. This helps us toget closer to our goal: cheaper and faster NRR that leads to its morewidespread use. The results on clinical brain MRI data showthat the GPU-based Block Matching (regular part) can run at least 1.9 timesfaster than on a typical cluster of workstations with eighthigh-performance nodes. The multicores-based implementation of theincremental finite element solver (irregular part) achieves speedup of up to7 times compared to its sequential version. As a result, the total run timeof the NRR code can be reduced to less than 1 minute therefore satisfyingthe real time requirement for its clinical application.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have