PyCUDA: GPU Run-Time Code Generation for High-Performance Computing
Clinical Orthopaedics and Related Research(2009)
摘要
High-performance scientific computing has recently seen a surge of interest
in heterogeneous systems, with an emphasis on modern Graphics Processing Units
(GPUs). These devices offer tremendous potential for performance and efficiency
in important large-scale applications of computational science. However,
exploiting this potential can be challenging, as one must adapt to the
specialized and rapidly evolving computing environment currently exhibited by
GPUs. One way of addressing this challenge is to embrace better techniques and
develop tools tailored to their needs. This article presents one simple
technique, GPU run-time code generation (RTCG), and PyCUDA, an open-source
toolkit 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 a
compelling two-tiered computing platform, potentially offering significant
performance and productivity advantages over conventional single-tier, static
systems. It is further observed that, compared to competing techniques, the
effort required to create codes using run-time code generation with PyCUDA
grows more gently in response to growing needs. The concept of RTCG is simple
and easily implemented using existing, robust tools. Nonetheless it is powerful
enough to support (and encourage) the creation of custom application-specific
tools by its users. The premise of the paper is illustrated by a wide range of
examples where the technique has been applied with considerable success.
更多查看译文
关键词
high-level languages,single-instruction multiple-data,massive parallelism,automated tuning,software engineering,code generation,many-core,gpu,scientific computing,high level language,scripting language,single instruction multiple data
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要