Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us
Search
Cart
Book cover

European Conference on Parallel Processing

Euro-Par 2012: Euro-Par 2012 Parallel Processing pp 40–51Cite as

  1. Home
  2. Euro-Par 2012 Parallel Processing
  3. Conference paper
A Type-Based Approach to Separating Protocol from Application Logic

A Type-Based Approach to Separating Protocol from Application Logic

A Case Study in Hybrid Computer Programming

  • Geoffrey C. Hulette19,
  • Matthew J. Sottile20 &
  • Allen D. Malony19 
  • Conference paper
  • 2897 Accesses

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 7484)

Abstract

Numerous programming models have been introduced to allow programmers to utilize new accelerator-based architectures. While OpenCL and CUDA provide low-level access to accelerator programming, the task cries out for a higher-level abstraction. Of the higher-level programming models which have emerged, few are intended to co-exist with mainstream, general-purpose languages while supporting tunability, composability, and transparency of implementation. In this paper, we propose extensions to the type systems (implementable as syntactically neutral annotations) of traditional, general-purpose languages can be made which allow programmers to work at a higher level of abstraction with respect to memory, deferring much of the tedium of data management and movement code to an automatic code generation tool. Furthermore, our technique, based on formal term rewriting, allows for user-defined reduction rules to optimize low-level operations and exploit domain- and/or application-specific knowledge.

Keywords

  • Application Logic
  • Reduction Rule
  • Memory Hierarchy
  • Identity Block
  • Rule Expression

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.

Download conference paper PDF

References

  1. Sanders, J., Kandrot, E.: CUDA By Example: An Introduction To General-Purpose GPU Programming (July 2010)

    Google Scholar 

  2. Khronos OpenCL Working Group: The OpenCL Specification Version 1.0

    Google Scholar 

  3. Reppy, J., Song, C.: Application-specific foreign-interface generation. In: GPCE 2006, pp. 49–58 (October 2006)

    Google Scholar 

  4. Fisher, K., Reppy, J.: The design of a class mechanism for Moby. In: SIGPLAN 1999, pp. 37–49 (May 1999)

    Google Scholar 

  5. Wolfe, M.: Implementing the PGI accelerator model. In: GPGPU 2010 (2010)

    Google Scholar 

  6. Dolbeau, R., Bihan, S., Bodin, F.: HMPP: A hybrid multi-core parallel programming environment. In: GPGPU 2007 (2007)

    Google Scholar 

  7. Cooper, P., Dolinsky, U., Donaldson, A.F., Richards, A., Riley, C., Russell, G.: Offload – Automating Code Migration to Heterogeneous Multicore Systems. In: Patt, Y.N., Foglia, P., Duesterwald, E., Faraboschi, P., Martorell, X. (eds.) HiPEAC 2010. LNCS, vol. 5952, pp. 337–352. Springer, Heidelberg (2010)

    CrossRef  Google Scholar 

  8. Fatahalian, K., Knight, T., Houston, M., Erez, M., Horn, D., Leem, L., Park, H., Ren, M., Aiken, A., Dally, W., Hanrahan, P.: Sequoia: Programming the memory hierarchy. In: SC 2006 (November 2006)

    Google Scholar 

  9. Baumgartner, G., et al.: Synthesis of high-performance parallel programs for a class of ab initio quantum chemistry models. Proceedings of the IEEE (2005)

    Google Scholar 

  10. Visser, E., el Abidine Benaissa, Z.: A core language for rewriting. Electronic Notes in Theoretical Computer Science 15, 422–441 (1998)

    CrossRef  Google Scholar 

  11. Beazley, D.M.: Automated scientific software scripting with SWIG. Future Generation Computer Systems 19, 599–609 (2003)

    CrossRef  Google Scholar 

  12. Baader, F., Nipkow, T.: Term rewriting and all that. Cambridge University Press, New York (1998)

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. University of Oregon, Eugene, OR

    Geoffrey C. Hulette & Allen D. Malony

  2. Galois, Inc., Portland, OR

    Matthew J. Sottile

Authors
  1. Geoffrey C. Hulette
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Matthew J. Sottile
    View author publications

    You can also search for this author in PubMed Google Scholar

  3. Allen D. Malony
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Editors and Affiliations

  1. University of Patras, Computer Technology Institute and Press “Diophantus”,, N. Kazantzaki, 26504, Rio, Greece

    Christos Kaklamanis

  2. University of Patras, University Building B, 26504, Rio, Greece

    Theodore Papatheodorou

  3. Computer Technology Institute and Press “Diophantus”, University of Patras, N. Kazantzaki, 26504, Rio, Greece

    Paul G. Spirakis

Rights and permissions

Reprints and Permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hulette, G.C., Sottile, M.J., Malony, A.D. (2012). A Type-Based Approach to Separating Protocol from Application Logic. In: Kaklamanis, C., Papatheodorou, T., Spirakis, P.G. (eds) Euro-Par 2012 Parallel Processing. Euro-Par 2012. Lecture Notes in Computer Science, vol 7484. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32820-6_6

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-642-32820-6_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-32819-0

  • Online ISBN: 978-3-642-32820-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Search

Navigation

  • Find a journal
  • Publish with us

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature