-
Notifications
You must be signed in to change notification settings - Fork 647
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TypeError/AssertionError test failures on i686 and armv7hl due to dtype being int32 instead of int64 #1362
Comments
32-bit testing/development has historically been tough. I recall similar problems when developing the XTCReader offset indexing, which could overflow 32-bit for large trajectories. Back then we had a hard time finding devs readily working on 32-bit machines and I guess the same holds now. |
I'm not very much in favour of supporting 32bit machines. For two reasons. None of the devs is using a 32bit machine and we can't CI test it on travis. So 32bit support could break with any release even if we fix it now. It's to bad for packaging this up for some distributions but I don't see it as a good fit to spend our time. |
Another reason for not supporting 32bit is the memory limit. I regularly have python processes larger then 4GB during analysis. |
I've just managed to build and run testsuite of 0.16.1 on armv7hl and the result is similar:
Full build.log from Fedora build system. I updated the issue summary, too. |
It looks like it might be a bug in numpy: numpy/numpy#4384 . I have a patch that brings the number of failed tests down to:
but it still needs further refinement and testing on 64bit. |
The remaining 12 errors are:
and the backtraces all end in:
|
Here are detailed ERROR logs. |
@mtiberti @wouterboomsma the failures here are also in ENCORE #1362 (comment). Please have a look – it might be something easily fixable in the ENCORE C code – probably #1390 but please double check. Thanks! |
Sure, on it! |
- Added tests for 32 bit index support - added @rathann to AUTHORS
Issue #1362 : use np.intp types for indexing instead of np.int64 - According to numpy/numpy#4384 (comment), `np.intp` is the recommended dtype for indexing: "... use np.intp as dtype whenever things have to do with indexing or are logically related to indexing/array sizes. This is the natural dtype for it and it will normally also be the fastest one. - see https://docs.scipy.org/doc/numpy/user/basics.types.html - see also PR #1391 for discussion - This change should go some way towards increasing compatibility with i386/i696 (32 bit) platforms. NOTE: No dedicated testing on 32 bit yet (see WIP PR #1392 )
Expected behaviour
All tests pass.
Actual behaviour
39 tests fail with:
or with
AssertionError
due todtype
beingint32
instead ofint64
.Code to reproduce the behaviour
Note that I had to use nosetests instead of mda_nosetests due to testsuite execution just stopping silently like in #1360 . Do you run the testsuite on 32bit x86? Sorry for the large paste, but github is not letting me attach the full log.
On Fedora rawhide (27) running on i686:
Currently version of MDAnalysis:
0.16.0
The text was updated successfully, but these errors were encountered: