Managing Algorithmic Skeleton Nesting Requirements in Realistic Image Processing Applications: The Case of the SKiPPER-II Parallel Programming Environment's Operating Model

SKiPPER is a SKeleton-based Parallel Programming EnviRonment being developed since 1996 and running at LASMEA Laboratory, the Blaise-Pascal University, France. The main goal of the project was to demonstrate the applicability of skeleton-based parallel programming techniques to the fast prototyping of reactive vision applications. This paper deals with the special features embedded in the latest version of the project: algorithmic skeleton nesting capabilities and a fully dynamic operating model. Throughout the case study of a complete and realistic image processing application, in which we have pointed out the requirement for skeleton nesting, we are presenting the operating model of this feature. The work described here is one of the few reported experiments showing the application of skeleton nesting facilities for the parallelisation of a realistic application, especially in the area of image processing. The image processing application we have chosen is a 3D face-tracking algorithm from appearance.

[1]  Murray Cole,et al.  Algorithmic Skeletons , 2006, Research Directions in Parallel Functional Programming.

[2]  Murray Cole,et al.  Algorithmic Skeletons: Structured Management of Parallel Computation , 1989 .

[3]  Norman Scaife,et al.  NESTED ALGORITHMIC SKELETONS FROM HIGHER ORDER FUNCTIONS , 2001 .

[4]  Dominique Ginhac,et al.  Prototypage rapide d'applications parallèles de vision artificielle par squelettes fonctionnels , 1999 .

[5]  Jocelyn Sérot,et al.  CAMLFLOW: a CAML to data-flow graph translator , 2000, Scottish Functional Programming Workshop.

[6]  Andrew M. Wallace,et al.  A Dual Source, Parallel Architecture for Computer Vision , 2004, The Journal of Supercomputing.

[7]  Jocelyn Sérot,et al.  Fast Prototyping of Image Processing Applications Using Functional Skeletons on a MIMD-DM Architecture , 1998, MVA.

[8]  Jocelyn Sérot,et al.  Embodying Parallel Functional Skeletons: An Experimental Implementation on Top of MPI , 1997, Euro-Par.

[9]  Rémi Coudarcher,et al.  Composition de squelettes algorithmiques : application au prototypage rapide d'applications de vision , 2002 .

[10]  Anthony Skjellum,et al.  A High-Performance, Portable Implementation of the MPI Message Passing Interface Standard , 1996, Parallel Comput..

[11]  Roland Chapuis,et al.  Fast prototyping of parallel-vision applications using functional skeletons , 2001, Machine Vision and Applications.

[12]  Jocelyn Sérot,et al.  SKiPPER: A Skeleton-Based Parallel Programming Environment for Real-Time Image Processing Applications , 1999, PaCT.

[13]  Jocelyn Sérot,et al.  Implementation of a skeleton-based parallel programming environment supporting arbitrary nesting , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[14]  Gregory D. Hager,et al.  Efficient Region Tracking With Parametric Models of Geometry and Illumination , 1998, IEEE Trans. Pattern Anal. Mach. Intell..

[15]  Mohammad M. Hamdan,et al.  A combinational framework for parallel programming using algorithmic skeletons , 2000 .

[16]  J. P. DerutinLASMEAUMR A Real Time Car Tracker , 1998 .

[17]  Michel Dhome,et al.  A simple and efficient template matching algorithm , 2001, Proceedings Eighth IEEE International Conference on Computer Vision. ICCV 2001.

[18]  Yves Sorel,et al.  Optimized rapid prototyping for real-time embedded heterogeneous multiprocessors , 1999, Proceedings of the Seventh International Workshop on Hardware/Software Codesign (CODES'99) (IEEE Cat. No.99TH8450).