[Numpy-discussion] Numpy 1.9.1, zeros and alignement
David Cournapeau
cournape at gmail.com
Tue Nov 18 13:56:06 EST 2014
On Tue, Nov 18, 2014 at 6:40 PM, Julian Taylor <
jtaylor.debian at googlemail.com> wrote:
> < 1.9 lies about alignment it doesn't actually check for new arrays.
>
When I do the following on 1.8.1 with win 32 bits:
x = np.zeros(12, "D")
print x.aligned.flags == (x.__array_interface__["data"][0] % 16 == 0) #
always true
print x.aligned.flags # always true
but on 1.9.1:
x = np.zeros(12, "D")
print x.aligned.flags == (x.__array_interface__["data"][0] % 16 == 0) #
always true
print x.aligned.flags # not always true
I wonder why numpy 1.8.1 always returned 16 bytes aligned arrays in this
case (unlikely to be a coincidence, as I try quite a few times with
different sizes).
>
> is the array aligned?
>
> On 18.11.2014 19:37, David Cournapeau wrote:
> > Additional point: it seems to always return aligned data on 1.8.1 (same
> > platform/compiler/everything).
> >
> > On Tue, Nov 18, 2014 at 6:35 PM, David Cournapeau <cournape at gmail.com
> > <mailto:cournape at gmail.com>> wrote:
> >
> > It is on windows 32 bits, but I would need to make this work for
> > complex (pair of double) as well.
> >
> > Is this a bug (I assumed array creation methods would always create
> > aligned arrays for their type) ? Seems like quite a bit of code out
> > there would assume this (scipy itself does for example).
> >
> > (the context is > 100 test failures on scipy 0.14.x on top of numpy
> > 1.9., because f2py intent(inout) fails on work arrays created by
> > zeros, this is a windows-32 only failure).
> >
> > David
> >
> > On Tue, Nov 18, 2014 at 6:26 PM, Julian Taylor
> > <jtaylor.debian at googlemail.com
> > <mailto:jtaylor.debian at googlemail.com>> wrote:
> >
> > On 18.11.2014 19:20, David Cournapeau wrote:
> > > Hi,
> > >
> > > I have not followed closely the changes that happen in 1.9.1,
> > but was
> > > surprised by the following:
> > >
> > > x = np.zeros(12, "d")
> > > assert x.flags.aligned # fails
> > >
> > > This is running numpy 1.9.1 built on windows with VS 2008. Is
> it
> > > expected that zeros may return a non-aligned array ?
> > >
> >
> > what is the real alignment of the array? Are you on 32 bit or 64
> > bit?
> > What is the alignment of doubles in windows (linux its 4 byte on
> > 32 bit
> > 8 byte on 64 bit (% special compiler flags)?
> > print x.__array_interface__["data"]
> >
> > there are problems with complex types but doubles should be
> > aligned even
> > on 32 bit.
> > _______________________________________________
> > NumPy-Discussion mailing list
> > NumPy-Discussion at scipy.org <mailto:NumPy-Discussion at scipy.org>
> > http://mail.scipy.org/mailman/listinfo/numpy-discussion
> >
> >
> >
> >
> >
> > _______________________________________________
> > NumPy-Discussion mailing list
> > NumPy-Discussion at scipy.org
> > http://mail.scipy.org/mailman/listinfo/numpy-discussion
> >
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20141118/06ab7d70/attachment.html>
More information about the NumPy-Discussion
mailing list