[Numpy-discussion] ANN: PyCuda
Andreas Klöckner
lists at informa.tiker.net
Sun Jun 22 11:02:24 EDT 2008
Hi all,
I am happy to announce the availability of PyCuda [1,8], which is a
value-added Python wrapper around Nvidia's CUDA [2] GPU Computation
framework. In the presence of other wrapping modules [3,4], why would you
want to use PyCuda?
* It's designed to work and interact with numpy.
* RAII, [5] i.e. object cleanup is tied to lifetime of objects. This idiom
makes it much easier to write correct, leak- and crash-free code. PyCuda
knows about liftime 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.driver.SourceModule [6] and
pycuda.gpuarray.GPUArray [7] 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 [8] with plenty of examples.
If you run into any issues using the code, don't hesitate to post here or get
in touch.
Andreas
[1] http://mathema.tician.de/software/pycuda
[2] http://nvidia.com/cuda
[3] http://code.google.com/p/pystream/
[4] ftp://ftp.graviscom.com/pub/code/python-cuda
[5] http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization
[6] http://tiker.net/doc/pycuda/driver.html#pycuda.driver.SourceModule
[7] http://tiker.net/doc/pycuda/array.html#pycuda.gpuarray.GPUArray
[8] http://tiker.net/doc/pycuda <-- click here!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20080622/6e94d75f/attachment.sig>
More information about the NumPy-Discussion
mailing list