させて
import pyopencl as cl
import pyopencl.array as cl_array
import numpy
a = numpy.random.rand(50000).astype(numpy.float32)
mf = cl.mem_flags
違いは何ですか
a_gpu = cl.Buffer(self.ctx, mf.READ_ONLY | mf.COPY_HOST_PTR, hostbuf=a)
と
a_gpu = cl_array.to_device(self.ctx, self.queue, a)
?
そして、の違いは何ですか
result = numpy.empty_like(a)
cl.enqueue_copy(self.queue, result, result_gpu)
と
result = result_gpu.get()
?