Advertisement

Skeleton Realisations from Functional Prototypes

  • Greg Michaelson
  • Norman Scaife

Abstract

Prototyping is an attractive general basis for experimentation with system design, where the design is refined in the light of prototype behaviour, leading in turn to prototype refinement. A prototype should be considerably cheaper to construct than the final system, and avoid commitment to fine implementation detail, while displaying the same gross input/output characteristics. Once the design has stabilised, the prototype provides a standard for the final system.

Keywords

Parallel Implementation Functional Language Canny Edge Detector High Order Function Functional Prototype 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    P. Besl and R. Jain. Invariant surface characteristics for 3d object recognition. Computer Vision, Graphics and Image Processing, 33:33–80, 1986.MATHCrossRefGoogle Scholar
  2. 2.
    L. Birkedal, N. Rothwell, M. Tofte, and D. N. Turner. The ml kit Version 1. Technical Report 93/14, Department of Computer Science, University of Copenhagen, 1993.Google Scholar
  3. 3.
    T. Bratvold. Determing useful parallelism in higher order functions. In Proceedings of 4th International Workshop on the Parallel Implementation of Functional Languages, Aachen, Germany, pages 213–226. Aachener Informatik-Berichte, September 1992.Google Scholar
  4. 4.
    T. Bratvold. A skeleton based parallelising compiler for standard ML. In Proceedings of 5th International Workshop on Implementation of Functional Languages, pages 23–34, Nijmegen, Holland, September 1993.Google Scholar
  5. 5.
    T. Bratvold. Parallelising a functional program using a list-homomorphism skeleton. In Proceedings of PASCO’94, pages 44–53. World Scientific Publishing Company, 1994.Google Scholar
  6. 6.
    D. Busvine. Implementing recursive functions as processor farms. Parallel Computing, 19:1141–1153, 1993.MATHCrossRefGoogle Scholar
  7. 7.
    D. Busvine. Detecting parallel structures in functional programs In PhD thesis. Dept of Computing & Electrical Engineering, July 1994.Google Scholar
  8. 8.
    J. Canny. A computational approach to edge detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, PAMI-8:679–698, 1986.CrossRefGoogle Scholar
  9. 9.
    E. Chailloux, P. Manoury, and B. Pagano. Développement d’applications avec Objective Caml. O’Reilly, Paris, April 2000.Google Scholar
  10. 10.
    M. I. Clarkson. Parallel implementation of a range image segmentation algorithm. Master’s thesis, Department of Computing and Electrical Engineering, Heriot-Watt University, Riccarton, Edinburgh, EH14 4AS, 1994.Google Scholar
  11. 11.
    A. Cook. Using Proof in Transformation Synthesis for Automatic Parallelisation. PhD thesis, Dept of Computing and Electrical Engineering, Heriot-Watt University, 2001.Google Scholar
  12. 12.
    A. Cook, A. Ireland, and G. Michaelson. Higher order function synthesis through proof planning. In Proceedings of 16th Annual International Conference on Automated Software Engineering ASE 2001, pages 307–310, San Diego, USA, November 2001. IEEE Computer Society.Google Scholar
  13. 13.
    M. P. I. Forum. Mpi: A message-passing interface standard. International Journal of Supercomputer Applications and High Performance Computing, 8(3/4), 1994.Google Scholar
  14. 14.
    M. Hamdan. A Combinational Framework for Parallel Programming Using Algorithmic Skeletons. PhD thesis, Department of Computing and Electrical Engineering, Heriot-Watt University, 2000.Google Scholar
  15. 15.
    M. Hamdan, G. Michaelson, and P. King. A scheme for nesting algorithmic skeletons. In C. Clack, T. Davie, and K. Hammond, editors, Proceedings of 10th International Workshop on Implementation of Functional Languages, pages 195–212, University College London, September 1998.Google Scholar
  16. 16.
    M. Hamdan, G. Michaelson, and P. King. A framework for nesting algorithmic skeletons. In Proceedings of 1999 International Conference on Parallel Computing ParCo’99, pages 542–549, Delft, Holland, January 2000. Imperial College Press.Google Scholar
  17. 17.
    Impala. Impala –IMplicitly PArallel LAnguage Application Suite. <URL:http://www.csg.lcs.mit.edu/impala/>, July 2001.
  18. 18.
    G. Koutsakis. Parallel low level vision from functional prototypes. Master’s thesis, Dept. of Computing and Electrical Engineering, Heriot-Watt University, Riccarton, Edinburgh, October 1993.Google Scholar
  19. 19.
    V. F. Leavers. Survey: Which hough transform? CVGIP: Image Understanding, 58(2):250–264, September 1993.CrossRefGoogle Scholar
  20. 20.
    P. McAndrew and A. M. Wallace. Rapid invocation and matching of 2d images to 3d models using curvilinear data. In Proc. of 3rd Int. Conf. on Image Processing and its Applications, pages 83–87, Warwick, July 1989.Google Scholar
  21. 21.
    G. Michaelson, A. Ireland, and P. King. Towards a skeleton based parallelising compiler for sml. In C. Clack, T. Davie, and K. Hammond, editors, Proceedings of 9th International Workshop on Implementation of Functional Languages, pages 539–546, University of St Andrews, September 1997.Google Scholar
  22. 22.
    G. Michaelson and N. Scaife. Parallel functional island model genetic algorithms through nested skeletons. In M. Mohnen and P. Koopman, editors, Proceedings of 12th International Workshop on the Implementation of Functional Languages, pages 307–313, Aachen, September 2000.Google Scholar
  23. 23.
    G. Michaelson, N. Scaife, P. Bristow, and P. King. Nested algorithmic skeletons from higher order functions. Parallel Algorithms and Applications special issue on High Level Models and Languages for Parallel Processing, 16(2–3):2–3, 2001.MATHGoogle Scholar
  24. 24.
    G. J. Michaelson and N. R. Scaife. Prototyping a parallel vision system in standard ml. Journal of Functional Programming, 5(3):345–382, July 1995.CrossRefGoogle Scholar
  25. 25.
    R. Rangaswami A Cost Analysis for a Higher-Order Parallel Programming Model. PhD thesis, University of Edinburgh, 1995.Google Scholar
  26. 26.
    N. Scaife, P. Bristow, G. Michaelson, and P. King. Engineering a parallel compiler for sml. In C. Clack, T. Davie, and K. Hammond, editors, Proceedings of 10th International Workshop on Implementation of Functional Languages, pages 213–226, University College London, September 1998.Google Scholar
  27. 27.
    N. Scaife, G. Michaelson, and S. Horiguchi. Comparative cross-platform performance results from a parallelizing sml compiler. In Proceedings of 13th International Workshop on the Implementation of Functional Languages, pages 191–206, Stockholm, September 2001.Google Scholar
  28. 28.
    N. R. Scaife. A Dual Source, Parallel Architecture for Computer Vision. PhD thesis, Department of Computing and Electrical Engineering, HeriotWatt University, 1996.Google Scholar
  29. 29.
    N. R. Scaife, G. J. Michaelson, and A. M. Wallace. Four skeletons for computer vision. In Implementation of Functional Languages ’97, September 1997.Google Scholar
  30. 30.
    A. M. Wallace, G. J. Michaelson, P. McAndrew, K. Waugh, and W. Austin. Dynamic control and prototyping of parallel algorithms for intermediate and high-level vision. IEEE Computer, 25(2):43–53, February 1992.CrossRefGoogle Scholar
  31. 31.
    A. M. Wallace, G. J. Michaelson, N. Scaife, and W. J. Austin. A dual source, parallel architecture for computer vision. The Journal of Super-computing, 12(1/2):37–56, January/February 1998.Google Scholar
  32. 32.
    K. G. Waugh. Parallel imperative programs from functional prototypes. In Proceedings of the Workshop on the Parallel Implementation of Functional Languages, pages 75–88. Dept. Electronics and Computer Science, University of Southampton, June 1991.Google Scholar
  33. 33.
    K. G. Waugh and G. J. Michaelson. Parallel process placement from functional prototype instrumentation. In Proceedings TENCON 91, Energy, Computer, Communication and Control Systems, volume 2, pages 275–282, New Delhi, August 1991. IEEE.Google Scholar

Copyright information

© Springer-Verlag London 2003

Authors and Affiliations

  • Greg Michaelson
  • Norman Scaife

There are no affiliations available

Personalised recommendations