Domain-Specific Optimization Strategy for Skeleton Programs

  • Kento Emoto
  • Kiminori Matsuzaki
  • Zhenjiang Hu
  • Masato Takeichi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4641)


Skeletal parallel programming enables us to develop parallel programs easily by composing ready-made components called skeletons. However, a simply-composed skeleton program often lacks efficiency due to overheads of intermediate data structures and communications. Many studies have focused on optimizations by fusing successive skeletons to eliminate the overheads. Existing fusion transformations, however, are too general to achieve adequate efficiency for some classes of problems. Thus, a specific fusion optimization is needed for a specific class. In this paper, we propose a strategy for domain-specific optimization of skeleton programs. In this strategy, one starts with a normal form that abstracts the programs of interest, then develops fusion rules that transform a skeleton program into the normal form, and finally makes efficient parallel implementation of the normal form. We illustrate the strategy with a case study: optimization of skeleton programs involving neighbor elements, which is often seen in scientific computations.


Normal Form Parallel Implementation Fusion Rule Input List Fusion Optimization 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cole, M.: Algorithmic Skeletons: Structural Management of Parallel Computation. In: Research Monographs in Parallel and Distributed Computing, MIT Press, Cambridge (1989)Google Scholar
  2. 2.
    Rabhi, F.A., Gorlatch, S. (eds.): Patterns and Skeletons for Parallel and Distributed Computing. Springer, Heidelberg (2002)Google Scholar
  3. 3.
    Gorlatch, S., Wedler, C., Lengauer, C.: Optimization rules for programming with collective operations. In: IPPS / SPDP 1999. Procedeeings of 13th International Parallel Processing Symposium / 10th Symposium on Parallel and Distributed Processing, San Juan, Puerto Rico, April 12–16, 1999, IEEE Computer Society, Los Alamitos (1999)Google Scholar
  4. 4.
    Wedler, C., Lengauer, C.: On linear list recursion in parallel. Acta Informatica 35(10), (1998)Google Scholar
  5. 5.
    Hu, Z., Iwasaki, H., Takeichi, M.: An accumulative parallel skeleton for all. In: Le Métayer, D. (ed.) ESOP 2002 and ETAPS 2002. LNCS, vol. 2305, Springer, Heidelberg (2002)CrossRefGoogle Scholar
  6. 6.
    Matsuzaki, K., Kakehi, K., Iwasaki, H., Hu, Z., Akashi, Y.: A fusion-embedded skeleton library. In: Danelutto, M., Vanneschi, M., Laforenza, D. (eds.) Euro-Par 2004. LNCS, vol. 3149, Springer, Heidelberg (2004)Google Scholar
  7. 7.
    Grelck, C., Scholz, S.B.: Merging compositions of array skeletons in SaC. Parallel Computing 32(7-8) (2006)Google Scholar
  8. 8.
    Wadler, P.: Deforestation: Transforming programs to eliminate trees. In: Ganzinger, H. (ed.) ESOP 1988. LNCS, vol. 300, Springer, Heidelberg (1988)Google Scholar
  9. 9.
    Gill, A.J., Launchbury, J., Jones, S.L.P.: A short cut to deforestation. In: FPCA 1993. Conference on Functional Programming Languages and Computer Architecture, Copenhagen, Denmark, June 9–11, 1993, ACM Press, New York (1993)Google Scholar
  10. 10.
    Emoto, K., Matsuzaki, K., Hu, Z., Takeichi, M.: Domain-specific optimization for skeleton programs involving neighbor elements. Technical Report METR2007-05, Department of Mathematical Informatics, University of Tokyo (2007)Google Scholar
  11. 11.
    Matsuzaki, K., Iwasaki, H., Emoto, K., Hu, Z.: A library of constructive skeletons for sequential style of parallel programming. In: InfoScale 2006. Proceedings of the 1st international conference on Scalable information systems. ACM International Conference Proceeding Series, vol. 152, ACM Press, New York (2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Kento Emoto
    • 1
  • Kiminori Matsuzaki
    • 1
  • Zhenjiang Hu
    • 1
  • Masato Takeichi
    • 1
  1. 1.Graduate School of Information Science and Technology, University of Tokyo 

Personalised recommendations