publication . Preprint . 2013

GPU Scripting and Code Generation with PyCUDA

Klöckner, Andreas; Pinto, Nicolas; Catanzaro, Bryan; Lee, Yunsup; Ivanov, Paul; Fasih, Ahmed;
Open Access English
  • Published: 19 Apr 2013
Abstract
High-level scripting languages are in many ways polar opposites to GPUs. GPUs are highly parallel, subject to hardware subtleties, and designed for maximum throughput, and they offer a tremendous advance in the performance achievable for a significant number of computational problems. On the other hand, scripting languages such as Python favor ease of use over computational speed and do not generally emphasize parallelism. PyCUDA is a package that attempts to join the two together. This chapter argues that in doing so, a programming environment is created that is greater than just the sum of its two parts. We would like to note that nearly all of this chapter ap...
Subjects
free text keywords: Computer Science - Software Engineering
Download from

Mike Bayer. Mako: A super-fast templating language, 2010. http://makotemplates.org, Version 0.3.6.

N. Bell and M. Garland. Implementing sparse matrix-vector multiplication on throughput-oriented processors. In SC '09: Proceedings of the 2009 ACM/IEEE conference on Supercomputing, New York, NY, USA, 2009. ACM.

Nathan Bell and Michael Garland. Cusp: Generic parallel algorithms for sparse matrix and graph computations, 2010. http://cusp-library.googlecode.com, Version 0.1.0.

J. Dean and S. Ghemawat. MapReduce: Simplified data processing on large clusters. Communications of the ACM, 51(1):107-113, 2008.

Jared Hoberock and Nathan Bell. Thrust: A parallel template library, 2010. http://www.meganewtons.com/, Version 1.3.0.

Eric Jones, Travis Oliphant, Pearu Peterson, et al. SciPy: Open source scientific tools for Python, 2001-. URL http://www.scipy.org/.

Andreas Klo¨ckner, Nicolas Pinto, Yunsup Lee, Bryan C. Catanzaro, Paul Ivanov, and Ahmed Fasih. PyCUDA: GPU Run-Time Code Generation for High-Performance Computing. Technical report, Brown University, Providence, RI, USA, November 2009. submitted, http://arxiv.org/abs/0911.3456.

T. Oliphant. Guide to NumPy. Trelgol Publishing, Spanish Fork, UT, July 2006.

T. L. Veldhuizen and M. E. Jernigan. Will C++ be faster than Fortran? In Proceedings of the 1st International Scientific Computing in ObjectOriented Parallel Environments (ISCOPE'97), Lecture Notes in Computer Science. Springer-Verlag, 1997.

Abstract
High-level scripting languages are in many ways polar opposites to GPUs. GPUs are highly parallel, subject to hardware subtleties, and designed for maximum throughput, and they offer a tremendous advance in the performance achievable for a significant number of computational problems. On the other hand, scripting languages such as Python favor ease of use over computational speed and do not generally emphasize parallelism. PyCUDA is a package that attempts to join the two together. This chapter argues that in doing so, a programming environment is created that is greater than just the sum of its two parts. We would like to note that nearly all of this chapter ap...
Subjects
free text keywords: Computer Science - Software Engineering
Download from

Mike Bayer. Mako: A super-fast templating language, 2010. http://makotemplates.org, Version 0.3.6.

N. Bell and M. Garland. Implementing sparse matrix-vector multiplication on throughput-oriented processors. In SC '09: Proceedings of the 2009 ACM/IEEE conference on Supercomputing, New York, NY, USA, 2009. ACM.

Nathan Bell and Michael Garland. Cusp: Generic parallel algorithms for sparse matrix and graph computations, 2010. http://cusp-library.googlecode.com, Version 0.1.0.

J. Dean and S. Ghemawat. MapReduce: Simplified data processing on large clusters. Communications of the ACM, 51(1):107-113, 2008.

Jared Hoberock and Nathan Bell. Thrust: A parallel template library, 2010. http://www.meganewtons.com/, Version 1.3.0.

Eric Jones, Travis Oliphant, Pearu Peterson, et al. SciPy: Open source scientific tools for Python, 2001-. URL http://www.scipy.org/.

Andreas Klo¨ckner, Nicolas Pinto, Yunsup Lee, Bryan C. Catanzaro, Paul Ivanov, and Ahmed Fasih. PyCUDA: GPU Run-Time Code Generation for High-Performance Computing. Technical report, Brown University, Providence, RI, USA, November 2009. submitted, http://arxiv.org/abs/0911.3456.

T. Oliphant. Guide to NumPy. Trelgol Publishing, Spanish Fork, UT, July 2006.

T. L. Veldhuizen and M. E. Jernigan. Will C++ be faster than Fortran? In Proceedings of the 1st International Scientific Computing in ObjectOriented Parallel Environments (ISCOPE'97), Lecture Notes in Computer Science. Springer-Verlag, 1997.

Powered by OpenAIRE Open Research Graph
Any information missing or wrong?Report an Issue