 The unofficial Python language bindings can be obtained from "PyCUDA".import pycuda.compiler as comp
import pycuda.driver as drv
import numpy
import pycuda.autoinit

mod = comp.SourceModule("""
__global__ void multiply_them(float *dest, float *a, float *b)
""")

multiply_them = mod.get_function("multiply_them")

a = numpy.random.randn(400).astype(numpy.float32)
b = numpy.random.randn(400).astype(numpy.float32)

dest = numpy.zeros_like(a)
multiply_them(

print dest-a*b

Additional Python bindings to simplify matrix multiplication operations can be found in the program "pycublas".import numpy
from pycublas import CUBLASMatrix
A = CUBLASMatrix( numpy.mat(1,2,3],[4,5,6,numpy.float32) )
B = CUBLASMatrix( numpy.mat(2,3],[4,5],[6,7,numpy.float32) )
C = A*B
print C.np_mat()
while CuPy directly replaces NumPy