A Software Architecture for User Transparent Parallel Image Processing on MIMD Computers

This paper describes a software architecture that allows image processing researchers to develop parallel applications in a transparent manner. The architecture's main component is an extensive library of low level image processing operations that can be run on distributed memory MIMD-style parallel hardware. Since the library has an application programming interface identical to that of an existing sequential image library, all parallelism is completely hidden from the user. In this paper we give an overview of all architecture components, and show how issues related to automatic parallelization and optimization are dealt with by the application of domain specific performance models. Results obtained for a realistic application indicate that model-based optimization of a wide range of imaging software indeed is possible.

[1]  Juan Li,et al.  A software environment for parallel computer vision , 1992, Computer.

[2]  Dennis Koelma,et al.  Accurate Performance Models of Parallel Low Level Image Processing Operations Based on a Simple A , 2000 .

[3]  Ramesh Subramonian,et al.  LogP: towards a realistic model of parallel computation , 1993, PPOPP '93.

[4]  Wojciech Rytter,et al.  Note on Two-Dimensional Pattern Matching by Optimal Parallel Algorithms , 1992, ICPIA.

[5]  Chris J. Scheiman,et al.  LogGP: incorporating long messages into the LogP model—one step closer towards a realistic model for parallel computation , 1995, SPAA '95.

[6]  Danny Crookes Architectures for high performance image processing: The future , 1999, J. Syst. Archit..

[7]  Edward J. Delp,et al.  Dynamic intelligent scheduling and control of reconfigurable parallel architectures for computer vision/image processing , 1990, [1990] Proceedings. 10th International Conference on Pattern Recognition.

[8]  Gregory V. Wilson,et al.  Parallel Programming Using C , 1996 .

[9]  Dennis Koelma,et al.  The lazy programmer's approach to building a parallel image processing library , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[10]  Arnold W. M. Smeulders,et al.  Piecewise DM:a locally controllable deformable model , 1999 .

[11]  Amotz Bar-Noy,et al.  Designing broadcasting algorithms in the postal model for message-passing systems , 1992, SPAA '92.

[12]  Max A. Viergever,et al.  Scale and the differential structure of images , 1992, Image Vis. Comput..

[13]  Joel H. Saltz,et al.  Parallel Programming Using C++ , 1996 .

[14]  Rudy Lauwereins,et al.  On the Design and Implementation of Broadcast and Global Combine Operations Using the Postal Model , 1996, IEEE Trans. Parallel Distributed Syst..

[15]  Eugene Miya,et al.  Machine Characterization Based on an Abstract High-level Language Machine , 1990, PERV.

[16]  Dennis Koelma,et al.  A software architecture for user transparent parallel image processing , 2002, Parallel Comput..

[17]  Mounir Hamdi,et al.  Parallel Image Processing Applications on a Network of Workstations , 1995, Parallel Comput..

[18]  Rin-ichiro Taniguchi,et al.  Software platform for parallel image processing and computer vision , 1997, Optics & Photonics.

[19]  Arjan J. C. van Gemund,et al.  Spar: A Programming Language for Semi-Automatic Compilation of Parallel Programs , 1997, Concurr. Pract. Exp..

[20]  Said Boussakta A novel method for parallel image processing applications , 1999, J. Syst. Archit..

[21]  Ahmed Saoudi,et al.  Optimal Parallel Algorithms for Multidimensional Image Template Matching and Pattern Matching , 1992, ICPIA.

[22]  Peter M. A. Sloot,et al.  The distributed ASCI Supercomputer project , 2000, OPSR.

[23]  Message Passing Interface Forum MPI: A message - passing interface standard , 1994 .

[24]  R. van den Boomgaard,et al.  Background estimation in video sequences , 2000 .

[25]  Pieter P. Jonker,et al.  A Comparison of Linear Processor Arrays for Image Processing , 1998, MVA.

[26]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[27]  Marcel Worring,et al.  Content based internet access to paper documents , 1999, International Journal on Document Analysis and Recognition.

[28]  Marcel Worring,et al.  Face Detection Methods, a critical evaluation , 2000 .

[29]  Arnold W. M. Smeulders,et al.  Interaction in the segmentation of medical images: A survey , 2001, Medical Image Anal..

[30]  Dennis Koelma,et al.  Incorporating memory layout in the modeling of message passing programs , 2002, Proceedings 10th Euromicro Workshop on Parallel, Distributed and Network-based Processing.

[31]  Dan Hammerstrom,et al.  Image processing using one-dimensional processor arrays , 1996, Proc. IEEE.

[32]  Danny Crookes,et al.  A PVM Implementation of a Portable Parallel Image Processing Library , 1996, PVM.

[33]  Francisco Tirado,et al.  Data Locality Exploitation in the Decomposition of Regular Domain Problems , 2000, IEEE Trans. Parallel Distributed Syst..

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

[35]  Dennis Koelma,et al.  P-3PC: A Simple and Accurate Model of Point-to-Point Communication , 2000 .

[36]  Joseph N. Wilson,et al.  Handbook of computer vision algorithms in image algebra , 1996 .

[37]  Danny Crookes,et al.  A high level language for parallel image processing , 1994, Image Vis. Comput..

[38]  Cherri M. Pancake,et al.  Do parallel languages respond to the needs of scientific programmers? , 1990, Computer.