> Am 05.04.2016 um 22:08 schrieb Martin Weigert <mweig...@mpi-cbg.de>: > > Hey Gregor, > > Thanks, upgrading to the latest github version (bbb2ca7dd) got rid of the > INVALID_VALUE error, > however the host-image copy still is off and empties the input data ndarray > as a side effect > > #--------code > from __future__ import print_function > import numpy as np > import pyopencl as cl > > #host -> image > data = np.random.randn(100,100).astype(np.float32) > fmt = cl.ImageFormat(cl.channel_order.R, cl.channel_type.FLOAT) > im = cl.Image(ctx,cl.mem_flags.READ_WRITE, fmt, data.T.shape) > > cl.enqueue_copy(queue,im,data, origin = (0,0), region = data.T.shape) > > #image -> host > out = np.empty_like(data) > cl.enqueue_copy(queue,out, im, origin = (0,0), region = data.T.shape) > > print(np.allclose(out,data)) > # prints False > # data is zeroed out > #-------- >
Hi Martin, I can confirm that your original snippet, essentially #OK data = np.random.randn(10,10).astype(np.float32) im = cl.image_from_array(ctx, data) out = np.zeros_like(data) cl.enqueue_copy(queue,out,im, origin = (0,0), region = (10,10)) print np.allclose(out, data) is ok for me, but host to device image transfer via cl.enqueue_copy(queue, im, data, origin = (0,0), region = (10,10), ) seems to have no effect at all. I did not look further into detail. Gregor > I'll most have to revert to an earlier version then, > > cheers, > Martin > > > > > > Am 05/04/2016 um 15:41 schrieb Gregor Thalhammer: >>> Am 05.04.2016 um 15:09 schrieb Martin Weigert <mweig...@mpi-cbg.de> >>> <mailto:mweig...@mpi-cbg.de>: >>> >>> Hey Gregor, >>> >>> thanks! >>> Actually the intial error was on me, as my example included the >>> "(interactive=False)" during context creation and the CPU got selected by >>> default, of course lacking the right image format. >>> >>> The code example now (with the Intel Iris selected as device) breaks at >>> >>> cl.enqueue_copy(queue,out,im, origin = (0,0), region = (100,100)) >>> >>> which gives (on 2015.2.4 and both the Iris and Titan) a >>> >>>> clenqueuereadimage failed: INVALID_VALUE >>> but runs fine on 2015.1. >>> >>> Did my snippet run fine on your machine when selecting either the Iris or >>> GT 750? >>> >>> Thanks, >>> >>> Martin >>> >> Hi Martin, >> >> your code runs without error with both GPUs. I am running a (not recent) git >> version of pyopencl, your 2015.2.4 is probably missing a bug fix, issue #106 >> for enqueue_copy_buffer_rect. >> >> Gregor >>
_______________________________________________ PyOpenCL mailing list PyOpenCL@tiker.net https://lists.tiker.net/listinfo/pyopencl