[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/952532.952729acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
Article

Automatic code generation for a convection scheme

Published: 09 March 2003 Publication History

Abstract

Traditional design and implementation of large atmospheric models is a difficult, tedious and error prone task. With the CTADEL project we investigate a new method of code generation, where the designer describes the model in an abstract high-level specification language which is translated into highly optimized Fortran code. This is applied to a convection scheme as used in a numerical weather prediction model (NWP). We address problems like how to generate efficient code for conditional expressions by using polymorphic templates. Finally, we compare the generated code for the convection scheme with the hand-written reference code.

References

[1]
American National Standards Institute. Programming Languages C++, ISO 14882, 1998.
[2]
D. F. Bacon, S. L. Graham, and O. L. Sharp. Compiler transformations for high-performance computing. ACM Computings Surveys, 26(4):345--420, December 1994.
[3]
Steve Carr, Kathryn S. McKinley, and Chau-Wen Tseng. Compiler optimizations for improving data locality. In Proceedings of the Sixth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 252--262, San Jose, California, 1994.
[4]
L. DeRose, K. Gallivan, E. Gallopoulos, B. Marsolf, and D. Padua. Falcon: A matlab interactive restructuring compiler. In 8th International Workshop, LCPC'95, Languages and Compilers for Parallel Computing, pages 269--288, Columbus OH, USA, Aug. 1995. Springer Verlag.
[5]
E. Kållén (editor). Hirlam Documentation Manual System 2.5, June 1996.
[6]
Dawson R. Engler, Wilson C. Hsieh, and M. Frans Kaashoek. 'c: A language for high-level, efficient, and machine-independent dynamic code generation. In Symposium on Principles of Programming Languages, pages 131--144, 1996.
[7]
R. Barrett et al. Templates for the solution of linear systems: building blocks for iterative methods. SIAM, 1994.
[8]
Samual Z. Guyer and Calvin Lin. Broadway: A software architecture for scientific computing. In R. F. Boisvert and P. T. P. Tang, editors, The Architecture of Scientific Software. Kluwer Academic Press, 2000.
[9]
Hirlam home page. http://www.knmi.nl/hirlam.
[10]
The Distributed Asci Supercomputer home page. http://www.cs.vu.nl/das2/.
[11]
John S. Kain and J. Michael Fritsh. A one-dimensional entraining/detraining plume model and its application in convective parameterization. Journal of the Atmospheric Sciences, 47(23): 2784--2802, 1990.
[12]
Ken Kennedy. Telescoping languages: A compiler strategy for implementation of high-level domain-specific programming systems. In Proceedings of International Parallel and Distributed Processing Symposium 2000 (IPDPS 2000), pages 297--304, Cancun, Mexico, May 2000.
[13]
John Mellor-Crummey and Vikram Adve. Simplifying control flow in compiler-generated Parallel code. In Proceedings of the Tenth International Workshop on Languages and Compilers for Parallel Computing, Minneapolis, MN, 1997. Springer-Verlag.
[14]
The University of Texas. Plapack: Parallel linear algebra package. http://www.cs.utexas.edu/users/plapack/.
[15]
LAPACK Linear Algebra PACKage. http://www.netlib.org/lapack/.
[16]
The Beowulf project. http://www.beowulf.org.
[17]
M. J. Quinn. Parallel Computing, theory and practice. McGraw-Hill, 1994.
[18]
T. Sterling. D. Savarese, D. J. Becker, J. E. Dorband, U. A. Ranawake, and C. V. Packer. BEOWULF: A parallel workstation for scientific computation. In Proceedings of the 24th International Conference on Parallel Processing, pages I:11--14, Oconomowoc, WI, 1995.
[19]
Andrew Tolmach and Dino P. Oliva. From ML to Ada: Strongly-typed language interoperability via source translation. Journal Of Functional Programming, 8(4):367--412, 1998.
[20]
P. van der Mark, R. van Engelen, K. Gallivan, and W. Dewar. A case study for automatic code generation on a coupled ocean-atmosphere model. In Proceedings of the Second International Conference on Computational Science, volume LNCS 2329 of Lecture notes in computer science, pages 419--428, Amsterdam, The Netherlands, April 2002. Springer-Verlag.
[21]
Paul van der Mark, Gerard Cats, and Lex Wolters. Automatic code generation for a turbulence scheme. In Proceedings of the 15th International Conference of Supercomputing, pages 252--259, Sorrento, Italy, June 2001. ACM.
[22]
R. A. van Engelen. Ctadel: A Generator of Efficient Numerical Codes. PhD thesis, Universiteit Leiden, 1998.
[23]
Robert van Engelen, Lex Wolters, and Gerard Cats. Tomorrow's weather forecast: Productive program generation in atmospheric modeling. IEEE Computational Science and Engineering, 4(3):22--31, 1997.
[24]
Robert A. van Engelen. Atmol: A domain-specific language for atmospheric modeling. to appear in the Journal of Computing and Information Technology, 2002.
[25]
R. C. Whaley and J. J. Dongarra. Automatically tuned linear algebra software. In Proceedings of Alliance 98, Illinois, US, April 1998.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '03: Proceedings of the 2003 ACM symposium on Applied computing
March 2003
1268 pages
ISBN:1581136242
DOI:10.1145/952532
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 March 2003

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

SAC03
Sponsor:
SAC03: ACM Symposium on Applied Computing
March 9 - 12, 2003
Florida, Melbourne

Acceptance Rates

Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 205
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 28 Jan 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media