Unifying concepts in architecture-independent parallel image processing in Adapt

Adapt is a data parallel little language for both local and global image processing on parallel computers. It is architecture independent: it hides the distribution of data, the number of processors and their topology, and even the existence of multiple processes from the programmer. The programs Adapt generates are efficient, even as compared with hand code, are easy to compile for MIMD architectures, and are easy to write. Adapt presents the programmer with three underlying concepts: the idea of the split and merge programming model, raster order per-pixel processing, and the scanline/transpose method. These three concepts make it possible to implement a wide variety of image processing algorithms, including histogram, uniform convolution, run-length encoding, image warping, connected components analysis, and two-dimensional fast Fourier transform. Performance of Adapt on Sun/Unix workstations, the Carnegie Mellon Warp machine, and the Carnegie Mellon - Intel Corporation iWarp computer will be presented. Adapt is being used in an implementation of the emerging ISO/ANSI standard Programmer's Imaging Kernel System. The implementation strategy of the library will be discussed.

[1]  Thomas S. Huang,et al.  A fast two-dimensional median filtering algorithm , 1979 .

[2]  Jon A. Webb Steps toward architecture-independent image processing , 1992, Computer.

[3]  Guy E. Blelloch,et al.  Vector Models for Data-Parallel Computing , 1990 .

[4]  Azriel Rosenfeld,et al.  Digital Picture Processing , 1976 .

[5]  James J. Kistler,et al.  Connected components with split and merge , 1991, [1991] Proceedings. The Fifth International Parallel Processing Symposium.

[6]  Takeo Kanade,et al.  A Multiple-Baseline Stereo , 1993, IEEE Trans. Pattern Anal. Mach. Intell..

[7]  George Wolberg,et al.  Digital image warping , 1990 .

[8]  Guy E. Blelloch,et al.  Size and access inference for data-parallel programs , 1991, PLDI '91.