Table of Contents Author Guidelines Submit a Manuscript
Scientific Programming
Volume 17, Issue 1-2, Pages 113-134

Building High-Resolution Sky Images Using the Cell/B.E.

Ana Lucia Varbanescu,1 Alexander S. van Amesfoort,1 Tim Cornwell,2 Ger van Diepen,4 Rob van Nieuwpoort,4 Bruce G. Elmegreen,3 and Henk Sips1

1Department of Computer Science, Delft University of Technology, Delft, The Netherlands
2National Telescope Facility, Australia
3IBM T.J. Watson Research Center, NY, USA
4ASTRON, The Netherlands

Copyright © 2009 Hindawi Publishing Corporation. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


The performance potential of the Cell/B.E., as well as its availability, have attracted a lot of attention from various high-performance computing (HPC) fields. While computation intensive kernels proved to be exceptionally well suited for running on the Cell, irregular data-intensive applications are usually considered as poor matches. In this paper, we present our complete solution for enabling such a data-intensive application to run efficiently on the Cell/B.E. processor. Specifically, we target radioastronomy data gridding and degridding, two resembling imaging filters based on convolutional resampling. Our solution is based on building a high-level application model, used to evaluate parallelization alternatives. Next, we choose the one with the best performance potential, and we gradually exploit this potential by applying platform-specific and application-specific optimizations. After several iterations, our target application shows a speed-up factor between 10 and 20 on a dual-Cell blade when compared with the original application running on a commodity machine. Given these results, and based on our empirical observations, we are able to pinpoint a set of ten guidelines for parallelizing similar applications on the Cell/B.E. Finally, we conclude the Cell/B.E. can provide high performance for data-intensive applications at the price of increased programming efforts and with a significant aid from aggressive application-specific optimizations.