PyCUDA: GPU Run-Time Code Generation for High-Performance Computing

  • Klöckner A
  • Pinto N
  • Lee Y
  • et al.
N/ACitations
Citations of this article
108Readers
Mendeley users who have this article in their library.

Abstract

High-performance scientific computing has recently seen a surge of interestin heterogeneous systems, with an emphasis on modern Graphics Processing Units(GPUs). These devices offer tremendous potential for performance and efficiencyin important large-scale applications of computational science. However,exploiting this potential can be challenging, as one must adapt to thespecialized and rapidly evolving computing environment currently exhibited byGPUs. One way of addressing this challenge is to embrace better techniques anddevelop tools tailored to their needs. This article presents one simpletechnique, GPU run-time code generation (RTCG), and PyCUDA, an open-sourcetoolkit that supports this technique.In introducing PyCUDA, this article proposes the combination of a dynamic,high-level scripting language with the massive performance of a GPU as acompelling two-tiered computing platform, potentially offering significantperformance and productivity advantages over conventional single-tier, staticsystems. It is further observed that, compared to competing techniques, theeffort required to create codes using run-time code generation with PyCUDAgrows more gently in response to growing needs. The concept of RTCG is simpleand easily implemented using existing, robust tools. Nonetheless it is powerfulenough to support (and encourage) the creation of custom application-specifictools by its users. The premise of the paper is illustrated by a wide range ofexamples where the technique has been applied with considerable success.

Cite

CITATION STYLE

APA

Klöckner, A., Pinto, N., Lee, Y., Catanzaro, B., Ivanov, P., & Fasih, A. (2009). PyCUDA: GPU Run-Time Code Generation for High-Performance Computing. Retrieved from http://arxiv.org/abs/0911.3456

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free