32 bit windows should not provide 16 byte alignment, at least it doesn't for me. That is typically a property of 64 bit OS.
But that does not explain why normal double is not aligned for you, that only needs 4 bytes on i386 which even 32 bit OS should provide. I though I tested scipy on 32 bit linux which has very similar properties to win32, time to rerun the test. On 18.11.2014 19:56, David Cournapeau wrote: > > > On Tue, Nov 18, 2014 at 6:40 PM, Julian Taylor > <jtaylor.deb...@googlemail.com <mailto:jtaylor.deb...@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 <courn...@gmail.com > <mailto:courn...@gmail.com> > > <mailto:courn...@gmail.com <mailto:courn...@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.deb...@googlemail.com > <mailto:jtaylor.deb...@googlemail.com> > > <mailto:jtaylor.deb...@googlemail.com > <mailto:jtaylor.deb...@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@scipy.org > <mailto:NumPy-Discussion@scipy.org> > <mailto:NumPy-Discussion@scipy.org <mailto:NumPy-Discussion@scipy.org>> > > http://mail.scipy.org/mailman/listinfo/numpy-discussion > > > > > > > > > > > > _______________________________________________ > > NumPy-Discussion mailing list > > NumPy-Discussion@scipy.org <mailto:NumPy-Discussion@scipy.org> > > http://mail.scipy.org/mailman/listinfo/numpy-discussion > > > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org <mailto:NumPy-Discussion@scipy.org> > http://mail.scipy.org/mailman/listinfo/numpy-discussion > > > > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > http://mail.scipy.org/mailman/listinfo/numpy-discussion > _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion