Skip to content
Free planNo credit card requiredStart writing

article · ACM SIGPLAN Notices · 2012

Synthesising graphics card programs from DSLs

Luke Cartey, Rune B. Lyngsø, Oege de Moor

Cited by 1Abstract and details only

Abstract

Over the last five years, graphics cards have become a tempting target for scientific computing, thanks to unrivaled peak performance, often producing a runtime speed-up of x10 to x25 over comparable CPU solutions. However, this increase can be difficult to achieve, and doing so often requires a fundamental rethink. This is especially problematic in scientific computing, where experts do not want to learn yet another architecture. In this paper we develop a method for automatically parallelising recursive functions of the sort found in scientific papers. Using a static analysis of the function dependencies we identify sets - partitions - of independent elements, which we use to synthesise an efficient GPU implementation using polyhedral code generation techniques. We then augment our language with DSL extensions to support a wider variety of applications, and demonstrate the effectiveness of this with three case studies, showing significant performance improvement over equivalent CPU methods, and similar efficiency to hand-tuned GPU implementations.

Cite this paper

APA 7

Cartey, L., Lyngsø, R. B., & de Moor, O. (2012). Synthesising graphics card programs from DSLs. ACM SIGPLAN Notices, 47(6), 121–132. https://doi.org/10.1145/2345156.2254080

MLA 9

Cartey, Luke, et al. “Synthesising graphics card programs from DSLs.” ACM SIGPLAN Notices, vol. 47, no. 6, 2012, pp. 121–32, https://doi.org/10.1145/2345156.2254080.

Chicago

Cartey, Luke, Rune B. Lyngsø, and Oege de Moor. 2012. “Synthesising graphics card programs from DSLs.” ACM SIGPLAN Notices 47 (6): 121–32. https://doi.org/10.1145/2345156.2254080.

Harvard

Cartey, L., Lyngsø, R.B. and de Moor, O. (2012) ‘Synthesising graphics card programs from DSLs’, ACM SIGPLAN Notices, 47(6), pp. 121–132. Available at: https://doi.org/10.1145/2345156.2254080.

BibTeX
@article{cartey2012synthesising,
  title = {{Synthesising graphics card programs from DSLs}},
  author = {Cartey, Luke and Lyngsø, Rune B. and de Moor, Oege},
  journal = {ACM SIGPLAN Notices},
  volume = {47},
  number = {6},
  pages = {121--132},
  year = {2012},
  doi = {10.1145/2345156.2254080}
}

Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.