On 10/01/2012 04:56 PM, Charles R Harris wrote: > > > On Mon, Oct 1, 2012 at 8:40 AM, Thouis (Ray) Jones <tho...@gmail.com > <mailto:tho...@gmail.com>> wrote: > > On Mon, Oct 1, 2012 at 8:20 AM, Nathaniel Smith <n...@pobox.com > <mailto:n...@pobox.com>> wrote: > > [...] > > How can we discourage people from doing this in the future? Can we > > make .base write-only from the Python level (with suitable > deprecation > > period)? Rename it to ._base (likewise) so that it's still > possible to > > peek under the covers but we remind people that it's really an > > implementation detail with poorly defined semantics that might > change? > > Could we use the simpler .base behavior (fully collapsing the .base > chain), but be more aggressive about propagating information like > address/filename/offset for np.arrays that are created by slicing, > asarray(), etc.? > > Ray > (Sorry if I'm missing some context that makes this suggestion idiotic. > I'm still trying to catch back up on the list and may have missed > relevant discussion on other threads.) > > > It might be productive to step back a bit and ask if this is a memmap > problem or a workflow problem. My impression is that pickling memmaps is > a solution to a higher level problem in Scikits.learn workflow and I'd > like more details on what that problem is.
I'm not scikits-learn, but I'm pretty sure this is about wanting to use multiprocessing to parallelise code. You send pickled views of arrays, but the memory is shared amongst all processes (using either a file, or process shared memory). It would be cool to have some support for this in NumPy itself. The scikits-learn people should chime in here, but a suggestion: # pickles by reference to process-shared memory, or raises an exception # if memory can't be process-shared s = dumps(arr.byref) # in another process: arr = loads(s) Of course, *real* fixes would be to remove the GIL, or push forward the work in CPython on multiple independent interpreters in the same process. But that's rather more difficult. Dag Sverre _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion