Skip to content
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

[WIP] Playing around with 32 bits tests #1392

Closed
wants to merge 10 commits into from
Closed

[WIP] Playing around with 32 bits tests #1392

wants to merge 10 commits into from

Conversation

jbarnoud
Copy link
Contributor

Use a custom version of the ci-helper that installs 32 bits miniconda (hopefully).

See discussion in #1391

PR Checklist

  • Tests?
  • Docs?
  • CHANGELOG updated?
  • Issue raised/referenced?

@jbarnoud
Copy link
Contributor Author

The approach looks like it could work. For the moment I have 2 problems that need fixing:

  • I encounter a error with gcc:
In file included from /home/travis/miniconda/envs/test/include/python2.7/Python.h:58:0,
                     from MDAnalysis/coordinates/src/dcd.c:28:
    /home/travis/miniconda/envs/test/include/python2.7/pyport.h:895:2: error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)."
  • the onda package for mmtf-python only exists for 64bits

@kain88-de
Copy link
Member

Well there are afaik no 32bit conda-forge packages.

@jbarnoud
Copy link
Contributor Author

Well there are afaik no 32bit conda-forge packages.

I'd be tempted to use the version on pypi then. You built the conda package, do you have an objection?

@kain88-de
Copy link
Member

There is a conda-forge issue about 32 bit. conda-forge/conda-forge.github.io#163

orbeckst added a commit that referenced this pull request Jun 14, 2017
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 )
@jbarnoud
Copy link
Contributor Author

Youhou! It appears that my last tries on the matter succeeded! The tests now fails with errors that seems consistent with a 32 / 64 bits mismatch. I get errors with ENCORE in the lines of

======================================================================

ERROR: test_clustering_two_ensembles (MDAnalysisTests.analysis.test_encore.TestEncoreClustering)

----------------------------------------------------------------------

Traceback (most recent call last):

  File "/home/travis/miniconda/envs/test/lib/python2.7/site-pacDAnalysisTests/analysis/test_encore.py", line 483, in test_clustering_three_ensembles_two_identical

    cluster_collection = encore.cluster([self.ens1, self.ens2, self.ens1])

  File "/home/travis/miniconda/envs/test/lib/python2.7/site-packages/MDAnalysis/analysis/encore/clustering/cluster.py", line 220, in cluster

    results = pc.run()

  File "/home/travis/miniconda/envs/test/lib/python2.7/site-packages/MDAnalysis/analysis/encore/utils.py", line 298, in run

    **self.kwargs[i])))

  File "/home/travis/miniconda/envs/test/lib/python2.7/site-packages/MDAnalysis/analysis/encore/clustering/ClusteringMethod.py", line 157, in __call__

    noise=int(self.add_noise))

  File "MDAnalysis/analysis/encore/clustering/affinityprop.pyx", line 101, in MDAnalysis.analysis.encore.clustering.affinityprop.AffinityPropagation.run (MDAnalysis/analysis/encore/clustering/affinityprop.c:2206)

ValueError: Buffer dtype mismatch, expected 'long' but got 'long long'

I do not get all the errors @rathann reported, though. For instance, I did not notice the ones from #1362 in the travis log.

Anyway, I am going to wait for @utkbansal's #1370 to be merged before going much further here as it is going to conflict pretty much everywhere.

Use a custom version of the ci-helper that installs 32 bits miniconda.
Conda-forge ony provides 64 bits packages, this prevent installing
mmtf-python on the 32 bits build. Here I try to install it from pypi instead.
This reverts commit 8d5b3de.
@orbeckst orbeckst added the close? Evaluate if issue/PR is stale and can be closed. label Sep 28, 2018
@RMeli RMeli deleted the 32bits branch December 23, 2023 21:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
32 bit close? Evaluate if issue/PR is stale and can be closed. testing Work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants