PyCUDA gives you easy, Pythonic access to Nvidia‘s CUDA parallel computation API. Several wrappers of the CUDA API already exist–so why the need for PyCUDA? Object cleanup tied to lifetime of objects. This idiom, often called RAII in C++, makes it much easier to write correct, leak- and crash-free code. PyCUDA knows about dependencies, too, so (for example) it won’t detach from a context before all memory allocated in it is also freed. Convenience. Abstractions like pycuda.compiler.SourceModule and pycuda.gpuarray.GPUArray make CUDA programming even more convenient than with Nvidia’s C-based runtime. Completeness. PyCUDA puts the full power of CUDA’s driver API at your disposal, if you wish. Automatic Error Checking. All CUDA errors are automatically translated into Python exceptions. Speed. PyCUDA’s base layer is written in C++, so all the niceties above are virtually free. Helpful Documentation. You’re looking at it. ;)

References in zbMATH (referenced in 15 articles )

Showing results 1 to 15 of 15.
Sorted by year (citations)

  1. Essadki, Mohamed; Jung, Jonathan; Larat, Adam; Pelletier, Milan; Perrier, Vincent: A task-driven implementation of a simple numerical solver for hyperbolic conservation laws (2018)
  2. Jyh-Miin Lin: Python Non-Uniform Fast Fourier Transform (PyNUFFT): multi-dimensional non-Cartesian image reconstruction package for heterogeneous platforms and applications to MRI (2017) arXiv
  3. Hornikx, Maarten; Krijnen, Thomas; van Harten, Louis: openPSTD: the open source pseudospectral time-domain method for acoustic propagation (2016)
  4. Merrison-Hort, Robert: Fireflies: new software for interactively exploring dynamical systems using GPU computing (2015)
  5. Witherden, F. D.; Vermeire, B. C.; Vincent, P. E.: Heterogeneous computing on mixed unstructured grids with pyfr (2015)
  6. Cooper, Christopher D.; Bardhan, Jaydeep P.; Barba, L. A.: A biomolecular electrostatics solver using python, GPUs and boundary elements that can handle solvent-filled cavities and stern layers (2014)
  7. Cottet, G.-H.; Etancelin, J.-M.; Perignon, F.; Picard, C.: High order semi-Lagrangian particle methods for transport equations: numerical analysis and implementation issues (2014)
  8. Januszewski, M.; Kostur, M.: Sailfish: a flexible multi-GPU implementation of the lattice Boltzmann method (2014)
  9. Witherden, F. D.; Farrington, A. M.; Vincent, P. E.: PyFR: an open source framework for solving advection-diffusion type problems on streaming architectures using the flux reconstruction approach (2014)
  10. Knepley, Matthew G.; Terrel, Andy R.: Finite element integration on GPGPUs (2013)
  11. Cabarle, Francis George C.; Adorna, Henry; Martínez, Miguel A.: A spiking neural P system simulator based on CUDA (2012) ioport
  12. Klöckner, Andreas; Pinto, Nicolas; Lee, Yunsup; Catanzaro, Bryan; Ivanov, Paul; Fasih, Ahmed: PyCUDA and PyOpenCL: a scripting-based approach to GPU run-time code generation (2012) ioport
  13. Lazar, Aurel A.; Zhou, Yiyin: Massively parallel neural encoding and decoding of visual stimuli (2012)
  14. Lysenko, Mikola; Shapiro, Vadim; Nelaturi, Saigopal: Non-commutative morphology: Shapes, filters, and convolutions (2011)
  15. Klöckner, Andreas; Pinto, Nicolas; Lee, Yunsup; Catanzaro, Bryan C.; Ivanov, Paul; Fasih, Ahmed: Pycuda: GPU run-time code generation for high-performance computing (2009) ioport