Skip to main content

SKiPPER: A Skeleton-Based Parallel Programming Environment for Real-Time Image Processing Applications

  • Conference paper
  • First Online:
Parallel Computing Technologies (PaCT 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1662))

Included in the following conference series:

Abstract

This paper presents SKiPPER, a programming environment dedicated to the fast prototyping of parallel vision algorithms on MIMD- DM platforms. SKiPPER is based upon the concept of algorithmic skele- tons, i.e. higher order program constructs encapsulating recurring forms of parallel computations and hiding their low-level implementation de- tails. Each skeleton is given an architecture-independent functional (but executable) specification and a portable implementation as a generic pro- cess template. The source program is a purely functional specification of the algorithm in which all parallelism is made explicit by means of com- posing instances of selected skeletons, each instance taking as parameters the application specific sequential functions written in C. SKiPPER compiles this specification down to a process graph in which nodes cor- respond to sequential functions and/or skeleton control processes and edges to communications. This graph is then mapped onto the target topology using a third-party CAD software (SynDEx). The result is a dead-lock free, optimized (but still portable) distributed executive, which SKiPPER finally turns into executable code for the target platform. The initial specification, written in ML language, can also be executed on any sequential platform to check the correctness of the parallel algorithm. The applicability of SKiPPER concepts and tools has been demonstrated by parallelising several realistic real-time vision applications both on a multi-DSP platform and a network of workstations. It is here illustrated with a real-time vehicle detection and tracking application.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Cole. Algorithmic skeletons: structured management of parallel computations. Pitman/MIT Press, 1989.

    Google Scholar 

  2. G. Cousineau and M. Mauny. The functional approach to programming. Cambridge University Press, 1998-see also: http://pauillac.inriafr/caml.

  3. M. Danelutto, F. Pasqualetti, and S. Pelagatti. Skeletons for data parallelism in p3l. In C. Lengauer, M. Griebl, and S. Gorlatch, editors, Proc. of EURO-PAR’ 97, Passau, Germany, volume 1300 of LNCS, pages 619–628. Springer, August 1997.

    Chapter  Google Scholar 

  4. Marco Danelutto, Roberto DiCosmo, Xavier Leroy, and Susanna Pelagatti. Parallel functional programming with skeletons: the OCamlP3L experiment. In Proceedings ACM workshop on ML and its applications. Cornell University, 1998.

    Google Scholar 

  5. J. Darlington, Y. K Guo, H. W. To, and Y. Jing. Skeletons for structured parallel composition. In Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 1995.

    Google Scholar 

  6. D. Ginhac. Prototypage rapide d’applications de vision artificielle par squelettes fonctionnels. PhD thesis, Univ. B. Pascal, 1999.

    Google Scholar 

  7. D. Ginhac, J. Sérot, and J. P. Dérutin. Fast prototyping of image processing applications using functional skeletons on a MIMD-DM architecture. In IAPR Workshop on Machine Vision and Applications, pages 468–471, Chiba, Japan, Nov 1998.

    Google Scholar 

  8. P. Legrand, R. Canals, and J. P. Dérutin. Edge and region segmentation processes on the parallel vision machine Transvision. In Computer Architecture for Machine Perception, pages 410–420, New-Orleans, USA, Dec 1993.

    Google Scholar 

  9. F. Marmoiton, F. Collange, P. Martinet, and J. P. Dérutin. A real time car tracker. In International Conference on Advances in Vehicle Control and Safety, Amiens, France, July 1998.

    Google Scholar 

  10. G. J. Michaelson and N. R. Scaife. Prototyping a parallel vision system in standard ML. Journal of Functional Programming, 1995.

    Google Scholar 

  11. D. B. Skillicorn. Architecture-independent parallel computation. IEEE Computer, 23(12):38–50, December 1990.

    Google Scholar 

  12. D. B. Skillicorn and D. Talia. Models and languages for parallel computation. Computing Surveys, June 1998.

    Google Scholar 

  13. Y. Sorel. Massively parallel systems with real time constraints. The “Algorithm Architecture Adequation” Methodology. In Proc. Massively Parallel Computing Systems, Ischia Italy, May 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sérot, J., Ginhac, D., Dérutin, JP. (1999). SKiPPER: A Skeleton-Based Parallel Programming Environment for Real-Time Image Processing Applications. In: Malyshkin, V. (eds) Parallel Computing Technologies. PaCT 1999. Lecture Notes in Computer Science, vol 1662. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48387-X_31

Download citation

  • DOI: https://doi.org/10.1007/3-540-48387-X_31

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66363-8

  • Online ISBN: 978-3-540-48387-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics