Re: [Numpy-discussion] Pairwise summation

2019-01-07 Thread Sebastian Berg
On Mon, 2019-01-07 at 12:15 -0800, Keith Goodman wrote: > Numpy uses pairwise summation along the fast axis if that axis > contains no more than 8192 elements. How was 8192 chosen? > It is simply a constant used throughout the ufunc machinery (and iteration) for cache friendliness. However, that

[Numpy-discussion] Pairwise summation

2019-01-07 Thread Keith Goodman
Numpy uses pairwise summation along the fast axis if that axis contains no more than 8192 elements. How was 8192 chosen? Doubling to 16384 would result in a lot more function call overhead due to the recursion. Is it a speed issue? Memory? Or something else entirely? __

Re: [Numpy-discussion] Add guaranteed no-copy to array creation and reshape?

2019-01-07 Thread Sebastian Berg
On Mon, 2019-01-07 at 20:04 +0100, Matthias Geier wrote: > On Wed, Jan 2, 2019 at 2:24 PM Sebastian Berg wrote: > > On Wed, 2019-01-02 at 11:27 +0100, Matthias Geier wrote: > > > Hi Sebastian. > > > > > > Thanks for the clarification. > > > > > > > > > print(arr.shape) # also (5, 2) > > > > >

Re: [Numpy-discussion] Add guaranteed no-copy to array creation and reshape?

2019-01-07 Thread Eric Wieser
@Matthias: Most of the time I would not assign to arr.shape, but in some rare occasions I find it very useful. And one of those rare occasions is when you want guaranteed no-copy behavior. Can you come up with any other example? The only real argument you seem to have here is “my code uses arr.s

Re: [Numpy-discussion] Add guaranteed no-copy to array creation and reshape?

2019-01-07 Thread Feng Yu
Hi, Was it ever brought up the possibility of a new array class (ndrefonly, ndview) that is strictly no copy? All operations on ndrefonly will return ndrefonly and if the operation cannot be completed without making a copy, it shall throw an error. On the implementation there are two choices if

Re: [Numpy-discussion] Add guaranteed no-copy to array creation and reshape?

2019-01-07 Thread Matthias Geier
On Wed, Jan 2, 2019 at 2:24 PM Sebastian Berg wrote: > > On Wed, 2019-01-02 at 11:27 +0100, Matthias Geier wrote: > > Hi Sebastian. > > > > Thanks for the clarification. > > > > > > print(arr.shape) # also (5, 2) > > > > > > so the arr container (shape, dtype) is changed/muted. I think we > > > e