I was investigating this, but take() only seems to accept an array of integer indices, which would help in the 1d-case, but if I want to do it in multiple dimensions or pass e.g. : for those, it doesn't help.
I don't understand what's going on in multi_take either, but "multi" seems to be about multiple arrays, not multiple dimensions. > On 24. Jul 2018, at 15:12, Syam Gadde <[email protected]> wrote: > > Could you use gpuarray.take()? There is also apparently an undocumented > multi_take(), but I don't know how it works. If you absolutely need the > slicing syntax, it probably wouldn't be hard to modify __getitem__ to use > take/multi_take. > > -syam > > From: PyCUDA <[email protected]> on behalf of Rasmus Diederichsen > <[email protected]> > Sent: Tuesday, July 24, 2018 5:24:40 AM > To: [email protected] > Subject: [PyCUDA] How can I emulated numpy-style index arrays? > > Good day, list. > > In numpy, one can use arrays of ints to select a non-contiguous subarray, but > the same does not work in Pycuda (only slices, ellipses and ints). Is there a > straightforward way to emulate this behaviour (maybe use some memcpy call to > extract the relevant data)? > > Cheers, > Rasmus
signature.asc
Description: Message signed with OpenPGP
_______________________________________________ PyCUDA mailing list [email protected] https://lists.tiker.net/listinfo/pycuda
