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

Make software harder

Published: 08 May 2018 Publication History

Abstract

Programming models should ideally let programmers express their ideas directly and explicitly. No such models are available for expert programmers, authors of machine-specific code optimizations, whose ideas often exploit architectural details invisible even at the assembly language level. In this paper we call for filling this void, and define performance transparency to evaluate the extent to which a programming model accommodates the expert programmer use case. We propose a specific approach to attaining performance transparency: make software harder by exposing the key components of the target architecture. The opportunities and challenges this approach brings are discussed.

References

[1]
P. Axer, C. Rochange, M. Sebastian, R. Von Hanxleden, R. Wilhelm, W. Yi, R. Ernst, H. Falk, A. Girault, D. Grund, N. Guan, B. Jonsson, P. Marwedel, and J. Reineke. 2014. Building timing predictable embedded systems. ACM Trans. on Embedded Computing Systems 13, 4 (2014), 1--37.
[2]
J. Bachrach, H. Vo, B. Richards, Y. Lee, A. Waterman, R. Avižienis, J. Wawrzynek, and K. Asanović. 2012. Chisel: Constructing Hardware in a Scala Embedded Language. In Proc. of the 49th Design Automation Conference (DAC'12). 1212--1221.
[3]
B. A. Bjørnseth, J. C. Meyer, and L. Natvig. 2018. Proof-of-Concept Examples of Performance-Transparent Programming Models. Technical Report. arXiv:1803.11179
[4]
W. Gropp and M. Snir. 2013. Programming for exascale computers. Computing in Science and Engineering 15, 6 (2013), 27--35.
[5]
H. Guan, X. Shen, and H. Krim. 2017. Egeria: A Framework for Automatic Synthesis of HPC Advising Tools through Multi-Layered Natural Language Processing. In Proc. of the Int'l Conf. for High Performance Computing, Networking, Storage and Analysis (SC'17). 10:1--14.
[6]
C. A. R. Hoare. 1973. Hints on Programming Language Design. Technical Report. 29 pages.
[7]
P. Karpiński and J. McDonald. 2017. An Embedded Domain Specific Language for General Purpose Vectorization. In ICS High Performance Workshops 2017, LNCS, J.M. Kunkel (Ed.). Vol. 10524. Springer International Publishing, 515--537.
[8]
K. Kennedy, C. Koelbel, and H. Zima. 2011. The rise and fall of high performance Fortran. Commun. ACM 54 (2011), 74.
[9]
Donald E. Knuth. 1968. Semantics of context-free languages. Mathematical Systems Theory 2, 2 (1968), 127--145.
[10]
Peter Kogge and John Shalf. 2013. Exascale computing trends: Adjusting to the "new normal" for computer architecture. Computing in Science and Engineering 15, 6 (2013), 16--26.
[11]
W. R. Mark, R. S. Glanville, K. Akeley, and M. J. Kilgard. 2003. Cg: a system for programming graphics hardware in a C-like language. ACM Trans. on Graphics 22, 3 (2003), 896--907.
[12]
M. D. McCool. 2008. Scalable programming models for massively multicore processors. Proc. IEEE 96, 5 (2008), 816--831.
[13]
John Nickolls, Ian Buck, Michael Garland, and Kevin Skadron. 2008. Scalable parallel programming with CUDA. ACM Queue 6, April (2008), 40--53.
[14]
A. K. Sujeeth, K. J. Brown, H. Lee, T. Rompf, H. Chafi, M. Odersky, and K. Olukotun. 2014. Delite: A Compiler Architecture for Performance-Oriented Embedded Domain-Specific Languages. ACM Trans. on Embedded Computing Sys. 13, 4s (2014), 1--25.
[15]
Yuan Tang, Rezaul Chowdhury, Bradley C. Kuszmaul, Chi-keung Luk, and Charles E. Leiserson. 2011. The Pochoir Stencil Compiler. In Proceedings of the twenty-third annual ACM Symposium on Parallelism in Algorithms and Architectures. 117--128.
[16]
D. Unat, A. Dubey, T. Hoefler, J. Shalf, M. Abraham, M. Bianco, B. L. Chamberlain, R. Cledat, H. C. Edwards, H. Finkel, K. Fuerlinger, F. Hannig, E. Jeannot, A. Kamil, J. Keasler, P. H J Kelly, V. Leung, H. Ltaief, N. Maruyama, C. J. Newburn, and M. Pericas. 2017. Trends in Data Locality Abstractions for HPC Systems. IEEE TPDS 9219, c (2017), 1--14.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
CF '18: Proceedings of the 15th ACM International Conference on Computing Frontiers
May 2018
401 pages
ISBN:9781450357616
DOI:10.1145/3203217
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 the author(s) 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: 08 May 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. HPC
  2. performance transparency
  3. programming models

Qualifiers

  • Short-paper

Conference

CF '18
Sponsor:
CF '18: Computing Frontiers Conference
May 8 - 10, 2018
Ischia, Italy

Acceptance Rates

Overall Acceptance Rate 273 of 785 submissions, 35%

Upcoming Conference

CF '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 64
    Total Downloads
  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 10 Dec 2024

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media