Biomedical image analysis on a cooperative cluster of GPUs and multicores
Departments of Biomedical Informatics and Electrical and Computer Engineering, The Ohio State University, Columbus, OH, USA
Proceedings of the 22nd annual international conference on Supercomputing, ICS ’08
@conference{hartley2008biomedical,
title={Biomedical image analysis on a cooperative cluster of GPUs and multicores},
author={Hartley, T.D.R. and Catalyurek, U. and Ruiz, A. and Igual, F. and Mayo, R. and Ujaldon, M.},
booktitle={Proceedings of the 22nd annual international conference on Supercomputing},
pages={15–25},
year={2008},
organization={ACM}
}
We are currently witnessing the emergence of two paradigms in parallel computing: streaming processing and multi-core CPUs. Represented by solid commercial products widely available in commodity PCs, GPUs and multi-core CPUs bring together an unprecedented combination of high performance at low cost. The scientific computing community needs to keep pace with application models and middleware which scale efficiently to hundreds of internal processing units. The purpose of the work we present here is twofold: first, a cooperative environment is designed so that both parallel models can coexist and complement one another. Second, beyond the parallelism of multiple internal cores, further parallelism is introduced when multiple CPU sockets, multiple GPUs, and multiple nodes are combined within a unique multi-processor platform which exceeds 10 TFLOPS when using 16 nodes. We illustrate our cooperative parallelization approach by implementing a large-scale, biomedical image analysis application which contains a number of assorted kernels including typical streaming operators, co-occurrence matrices, convolutions, and histograms. Experimental results are compared among different implementation strategies and almost linear speed-up is achieved when all coexisting methods in CPUs and GPUs are combined.
December 10, 2010 by hgpu