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

CI builds for non-amd64 architectures #2401

Merged
merged 12 commits into from
Jan 23, 2019
Merged

CI builds for non-amd64 architectures #2401

merged 12 commits into from
Jan 23, 2019

Conversation

mkuron
Copy link
Member

@mkuron mkuron commented Dec 5, 2018

fixes #2258

These tests will only run once a week and for tagged releases.

Should be tagged for Espresso 4.0.1 as it is part of the release checklist. We only need the .gitlab-ci.yml changes there though as I think everything else was caused by changes since the 4.0 release.

@codecov
Copy link

codecov bot commented Dec 5, 2018

Codecov Report

Merging #2401 into python will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@          Coverage Diff           @@
##           python   #2401   +/-   ##
======================================
  Coverage      73%     73%           
======================================
  Files         393     393           
  Lines       18477   18477           
======================================
  Hits        13533   13533           
  Misses       4944    4944
Impacted Files Coverage Δ
src/core/unit_tests/field_coupling_fields_test.cpp 100% <ø> (ø) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b5e2b26...223c659. Read the comment docs.

@mkuron
Copy link
Member Author

mkuron commented Dec 6, 2018

@RudolfWeeber, can you have a look at why the collision detection test fails on i386?

@fweik, can you have a look why I needed this terrible hack to make particle deletion work on i386?

I still need to fix up the s390x (big-endian) emulation problem.

@mkuron
Copy link
Member Author

mkuron commented Dec 6, 2018

I think I finally reproduced the problem of hanging tests that @junghans reported for i386. There is an MPI deadlock which the npt testcase sometimes runs into. @fweik, any ideas?

rank 0:

#6  0xf5eb89a6 in PMPI_Test () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf5c07ab4 in boost::mpi::request::handle_serialized_irecv<ParticleList> (self=0xffd7ca48, action=boost::mpi::request::ra_test)
    at /usr/include/boost/mpi/communicator.hpp:1595
#8  0xf5e3f5a9 in boost::mpi::request::test() () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#9  0xf5c087e2 in boost::mpi::wait_all<boost::mpi::request*, boost::mpi::status*> (first=0xffd7ca34, last=0xffd7ca5c, out=0xffd7ca5c)
    at /usr/include/boost/mpi/nonblocking.hpp:196
#10 0xf5c0661d in Utils::Mpi::detail::sendrecv_impl<ParticleList> (rval=..., rtag=0, src=<optimized out>, sval=..., stag=0, dest=<optimized out>, comm=...)
    at /builds/espressomd/espresso/src/core/utils/mpi/sendrecv.hpp:60
#11 Utils::Mpi::sendrecv<ParticleList> (rval=..., rtag=0, src=<optimized out>, sval=..., stag=0, dest=<optimized out>, comm=...)
    at /builds/espressomd/espresso/src/core/utils/mpi/sendrecv.hpp:69
#12 (anonymous namespace)::exchange_neighbors (pl=pl@entry=0xffd7cbcc) at /builds/espressomd/espresso/src/core/domain_decomposition.cpp:811
#13 0xf5c06fbf in dd_exchange_and_sort_particles (global=0, pl=0xffd7cbcc) at /builds/espressomd/espresso/src/core/domain_decomposition.cpp:861
#14 0xf5bd8224 in cells_resort_particles (global_flag=0) at /builds/espressomd/espresso/src/core/cells.cpp:402
#15 0xf5bd8566 in cells_update_ghosts () at /builds/espressomd/espresso/src/core/cells.cpp:486
#16 0xf5c3d17e in integrate_vv (n_steps=2, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:370

rank 1:

#6  0xf5ea2348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf5c24208 in ghost_communicator (gc=0xf5ce4168 <cell_structure+8>, data_parts=64)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:557
#8  0xf5c24a5b in ghost_communicator (gc=0xf5ce4168 <cell_structure+8>)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:476
#9  0xf5bc91d4 in cells_resort_particles (global_flag=<optimized out>) at /builds/espressomd/espresso/src/core/cells.cpp:423
#10 0xf5bc9566 in cells_update_ghosts () at /builds/espressomd/espresso/src/core/cells.cpp:486
#11 0xf5c2e17e in integrate_vv (n_steps=2, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:370

@fweik
Copy link
Contributor

fweik commented Dec 10, 2018

#2410 contains a solution for the remove particles issue, there was actually a bug. I didn't have any luck with the deadlock on Friday, but looking into it again now.

@mkuron
Copy link
Member Author

mkuron commented Dec 12, 2018

I have fixed the s390x issue and @fweik's fix for removing particles works.
That leaves two issues: the collision detection (@RudolfWeeber) and the deadlock (@fweik).

@RudolfWeeber
Copy link
Contributor

My impression is that
folded_positoin()
does not substract a box-length in y direction
Traceback (most recent call last):
File "collision_detection.py", line 225, in test_bind_at_point_of_collision
self.run_test_bind_at_point_of_collision_for_pos(np.array((0, 0, 0)))
File "collision_detection.py", line 135, in run_test_bind_at_point_of_collisio
_pos
self.verify_state_after_bind_at_poc(expected_np)
File "collision_detection.py", line 176, in verify_state_after_bind_at_poc
self.verify_bind_at_poc_pair(base_p1, base_p2, p, p2)
File "collision_detection.py", line 220, in verify_bind_at_poc_pair
np.copy(p.pos_folded), expected_pos, atol=1E-4)
File "/usr/lib/python2.7/dist-packages/numpy/testing/utils.py", line 1395, in
t_allclose
verbose=verbose, header=header, equal_nan=equal_nan)
File "/usr/lib/python2.7/dist-packages/numpy/testing/utils.py", line 778, in a
_array_compare
raise AssertionError(msg)
AssertionError:
Not equal to tolerance rtol=1e-07, atol=0.0001

(mismatch 33.3333333333%)
x: array([ 6.000000e-02, 1.000000e+00, 8.881784e-18])
y: array([ 0.06, 0. , 0. ])


Ran 8 tests in 2.029s

FAILED (failures=1)

The box length is 1.
The code reads:
# Check placement
if rel_to == p1.id:
dist_centers = np.copy(p2.pos - p1.pos)
else:
dist_centers = p1.pos - p2.pos
expected_pos = self.s.part[rel_to].pos_folded +
self.s.collision_detection.vs_placement * dist_centers
np.testing.assert_allclose(
np.copy(p.pos_folded), expected_pos, atol=1E-4)

@mkuron
Copy link
Member Author

mkuron commented Dec 18, 2018

Collision detection: fixed by #2415. MPI deadlock: fixed by #2421. I've updated this pull request and we'll see whether that makes all tests pass on all architectures.

@fweik
Copy link
Contributor

fweik commented Dec 18, 2018 via email

@mkuron
Copy link
Member Author

mkuron commented Dec 18, 2018

https://gitlab.icp.uni-stuttgart.de/espressomd/espresso/pipelines/4521

@RudolfWeeber, the collision detection problem still exists.

@fweik, i386 still has four deadlocks, two of which involve Boost:

during interactions_non-bonded:

rank 0:

#8  0xf70a2f61 in PMPI_Gather () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#9  0xf6e89d2c in mpi_who_has () at /builds/espressomd/espresso/src/core/particle_data.cpp:144
#10 0xf6e89fc4 in build_particle_node () at /builds/espressomd/espresso/src/core/particle_data.cpp:171
#11 0xf6e8a047 in get_particle_node (id=<optimized out>) at /builds/espressomd/espresso/src/core/particle_data.cpp:181
#12 0xf6e8b03c in get_particle_data (part=<optimized out>) at /builds/espressomd/espresso/src/core/particle_data.cpp:375
#13 0xe8179841 in __pyx_f_10espressomd_13particle_data_14ParticleHandle_update_particle_data (__pyx_v_self=0xd93273f8)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:3550
#14 0xe8180946 in __pyx_pf_10espressomd_13particle_data_14ParticleHandle_3pos_2__get__ (__pyx_v_self=0xd93273f8)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:4571
#15 __pyx_pw_10espressomd_13particle_data_14ParticleHandle_3pos_3__get__ (__pyx_v_self=0xd93273f8)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:4550
#16 __pyx_getprop_10espressomd_13particle_data_14ParticleHandle_pos (o=0xd93273f8, x=0x0)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:33957

rank 1:

#6  0xf7080348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf7a800de in boost::mpi::detail::packed_archive_recv(ompi_communicator_t*, int, int, boost::mpi::packed_iarchive&, ompi_status_public_t&) () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#8  0xf7a73226 in void boost::mpi::broadcast<boost::mpi::packed_iarchive>(boost::mpi::communicator const&, boost::mpi::packed_iarchive&, int) () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#9  0xf6dfec40 in boost::mpi::detail::broadcast_impl<IA_parameters> (values=0x57aab3d0, root=0, n=1, comm=...)
    at /usr/include/boost/mpi/collectives/broadcast.hpp:118
#10 0xf6dfee52 in boost::mpi::broadcast<IA_parameters> (root=0, value=..., comm=...)
    at /usr/include/boost/mpi/collectives/broadcast.hpp:128
#11 mpi_bcast_ia_params_slave (i=0, j=0) at /builds/espressomd/espresso/src/core/communication.cpp:1204

during rigid_bond:

rank 0:

#6  0xf7189348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf6f05a58 in ghost_communicator (gc=0xf6fc5180 <cell_structure+32>, data_parts=14)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:557
#8  0xf6f062ab in ghost_communicator (gc=0xf6fc5180 <cell_structure+32>)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:476
#9  0xf6f3adef in correct_pos_shake () at /builds/espressomd/espresso/src/core/rattle.cpp:179
#10 0xf6f0f837 in integrate_vv (n_steps=5000, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:348
#11 0xf6ebca6f in mpi_integrate (n_steps=5000, reuse_forces=0)
    at /builds/espressomd/espresso/src/core/communication.cpp:1155

rank 1:

#6  0xf70dd348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf6e59a58 in ghost_communicator (gc=0xf6f19180 <cell_structure+32>, data_parts=14)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:557
#8  0xf6e5a2ab in ghost_communicator (gc=0xf6f19180 <cell_structure+32>)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:476
#9  0xf6e8edef in correct_pos_shake () at /builds/espressomd/espresso/src/core/rattle.cpp:179
#10 0xf6e63837 in integrate_vv (n_steps=5000, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:348
#11 0xf6e0e0cc in mpi_integrate_slave (n_steps=5000, reuse_forces=0)
    at /builds/espressomd/espresso/src/core/communication.cpp:1162

during virtual_sites_tracers:

rank 0:

#6  0xf7170d6d in PMPI_Sendrecv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf662d3a6 in halo_push_communication (lbfluid=...)
    at /builds/espressomd/espresso/src/core/grid_based_algorithms/lb.cpp:1652
#8  0xf6631040 in lb_collide_stream () at /builds/espressomd/espresso/src/core/grid_based_algorithms/lb.cpp:2529
#9  0xf662aedf in lattice_boltzmann_update () at /builds/espressomd/espresso/src/core/grid_based_algorithms/lb.cpp:2562
#10 0xf6ef189d in integrate_vv (n_steps=500, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:410
#11 0xf6e9ea6f in mpi_integrate (n_steps=500, reuse_forces=0) at /builds/espressomd/espresso/src/core/communication.cpp:1155

rank 1:

#6  0xf70b8d8b in PMPI_Sendrecv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf6575171 in halo_push_communication (lbfluid=...)
    at /builds/espressomd/espresso/src/core/grid_based_algorithms/lb.cpp:1611
#8  0xf6579040 in lb_collide_stream () at /builds/espressomd/espresso/src/core/grid_based_algorithms/lb.cpp:2529
#9  0xf6572edf in lattice_boltzmann_update () at /builds/espressomd/espresso/src/core/grid_based_algorithms/lb.cpp:2562
#10 0xf6e3989d in integrate_vv (n_steps=500, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:410
#11 0xf6de40cc in mpi_integrate_slave (n_steps=500, reuse_forces=0)

during observable_cylindrical:

rank 0:

#6  0xf5e64348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf5df20de in boost::mpi::detail::packed_archive_recv(ompi_communicator_t*, int, int, boost::mpi::packed_iarchive&, ompi_status_public_t&) () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#8  0xf5dea589 in boost::mpi::status boost::mpi::communicator::recv<boost::mpi::packed_iarchive>(int, int, boost::mpi::packed_iarchive&) const () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#9  0xf5ba08c2 in boost::mpi::communicator::recv_impl<Particle> (this=0xf5ca6cfc <comm_cart>, tag=42, value=..., source=1)
    at /usr/include/boost/mpi/communicator.hpp:1265
#10 boost::mpi::communicator::recv<Particle> (value=..., tag=42, source=1, this=0xf5ca6cfc <comm_cart>)
    at /usr/include/boost/mpi/communicator.hpp:1278
#11 mpi_recv_part (pnode=1, part=76) at /builds/espressomd/espresso/src/core/communication.cpp:1110
#12 0xf5bfc0b8 in get_particle_data (part=<optimized out>) at /builds/espressomd/espresso/src/core/particle_data.cpp:391
#13 0xe87cd841 in __pyx_f_10espressomd_13particle_data_14ParticleHandle_update_particle_data (__pyx_v_self=0xd96353c8)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:3550
#14 0xe87d4946 in __pyx_pf_10espressomd_13particle_data_14ParticleHandle_3pos_2__get__ (__pyx_v_self=0xd96353c8)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:4571
#15 __pyx_pw_10espressomd_13particle_data_14ParticleHandle_3pos_3__get__ (__pyx_v_self=0xd96353c8)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:4550
#16 __pyx_getprop_10espressomd_13particle_data_14ParticleHandle_pos (o=0xd96353c8, x=0x0)
    at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:33957

rank 1:

#9  0xf5ee7cdc in PMPI_Bcast () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#10 0xf5c9106d in boost::mpi::detail::broadcast_impl<int> (n=3, root=0, values=0xfff4b70c, comm=...)
    at /usr/include/boost/mpi/collectives/broadcast.hpp:96
#11 boost::mpi::broadcast<int> (root=0, n=3, values=<optimized out>, comm=...)
    at /usr/include/boost/mpi/collectives/broadcast.hpp:134
#12 Communication::MpiCallbacks::loop (this=0x587b33e0) at /builds/espressomd/espresso/src/core/MpiCallbacks.cpp:85
#13 0xf5c398b9 in mpi_loop () at /builds/espressomd/espresso/src/core/communication.cpp:2312

@mkuron
Copy link
Member Author

mkuron commented Jan 9, 2019

I've merged the current master and #2431. We'll see how it goes.

@junghans
Copy link
Member

junghans commented Jan 9, 2019

I can re-package for the next release and see what still fails.

@mkuron
Copy link
Member Author

mkuron commented Jan 9, 2019

@fweik, the above MPI deadlock on i386 during virtual_sites_tracers still happens. So that one wasn't Boost's fault and still needs to be fixed. And there seems to be a new one in dpd.

Rank 0:

#6  0xf799a9a6 in PMPI_Test () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf59009f0 in boost::mpi::request::handle_serialized_array_irecv<Particle> (self=0x57255780, 
    action=boost::mpi::request::ra_test) at /usr/include/boost/mpi/communicator.hpp:1640
#8  0xf7c2f5a9 in boost::mpi::request::test() () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#9  0xf589645e in boost::mpi::wait_all<__gnu_cxx::__normal_iterator<boost::mpi::request*, std::vector<boost::mpi::request, std::allocator<boost::mpi::request> > > > (first=..., last=...) at /usr/include/boost/mpi/nonblocking.hpp:268
#10 0xf5900dea in Utils::Mpi::detail::gatherv_impl<Particle> (comm=..., in_values=<optimized out>, in_size=<optimized out>, 
    out_values=<optimized out>, sizes=0x571bca30, displs=0x571b7a00, root=<optimized out>)
    at /builds/espressomd/espresso/src/core/utils/mpi/gatherv.hpp:70
#11 0xf5900ff0 in Utils::Mpi::gatherv<Particle> (comm=..., in_values=<optimized out>, in_size=<optimized out>, 
    out_values=<optimized out>, sizes=<optimized out>, root=<optimized out>)
    at /builds/espressomd/espresso/src/core/utils/mpi/gatherv.hpp:97
#12 0xf58fcdd1 in mpi_get_particles (ids=...) at /builds/espressomd/espresso/src/core/particle_data.cpp:448
#13 0xf58fd126 in prefetch_particle_data (ids=...) at /builds/espressomd/espresso/src/core/particle_data.cpp:477
#14 0xe882b017 in __pyx_gb_10espressomd_13particle_data_18_ParticleSliceImpl_6generator (__pyx_generator=<optimized out>, 
    __pyx_sent_value=<optimized out>) at /builds/espressomd/espresso/build/src/python/espressomd/particle_data.cpp:18535

rank 1:

#6  0xf7902348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf7b9e0de in boost::mpi::detail::packed_archive_recv(ompi_communicator_t*, int, int, boost::mpi::packed_iarchive&, ompi_status_public_t&) () from target:/usr/lib/i386-linux-gnu/libboost_mpi.so.1.65.1
#8  0xf586a914 in boost::mpi::detail::scatter_impl<std::vector<int, std::allocator<int> > > (comm=..., 
    out_values=out_values@entry=0xffd99ce4, root=root@entry=0, n=1) at /usr/include/boost/mpi/collectives/scatter.hpp:92
#9  0xf586b87e in boost::mpi::scatter<std::vector<int, std::allocator<int> > > (root=0, out_value=..., comm=...)
    at /usr/include/boost/mpi/collectives/scatter.hpp:125
#10 mpi_get_particles_slave () at /builds/espressomd/espresso/src/core/particle_data.cpp:397

And a new one in collision_detection.

Rank 0:

#6  0xf79ce348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf6b4e8c8 in ghost_communicator (gc=0xf6c0e18c <cell_structure+44>, data_parts=16)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:557
#8  0xf6b4f11b in ghost_communicator (gc=0xf6c0e18c <cell_structure+44>)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:476
#9  0xf6b3a50b in force_calc () at /builds/espressomd/espresso/src/core/forces.cpp:183
#10 0xf6b58572 in integrate_vv (n_steps=5000, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:379
#11 0xf6b05b4f in mpi_integrate (n_steps=5000, reuse_forces=0)
    at /builds/espressomd/espresso/src/core/communication.cpp:1155

Rank 1:

#6  0xf7927348 in PMPI_Recv () from target:/usr/lib/i386-linux-gnu/libmpi.so.20
#7  0xf6aa78c8 in ghost_communicator (gc=0xf6b6718c <cell_structure+44>, data_parts=16)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:557
#8  0xf6aa811b in ghost_communicator (gc=0xf6b6718c <cell_structure+44>)
    at /builds/espressomd/espresso/src/core/ghosts.cpp:476
#9  0xf6a93536 in force_calc () at /builds/espressomd/espresso/src/core/forces.cpp:190
#10 0xf6ab1572 in integrate_vv (n_steps=5000, reuse_forces=0) at /builds/espressomd/espresso/src/core/integrate.cpp:379
#11 0xf6a5c1ac in mpi_integrate_slave (n_steps=5000, reuse_forces=0)
    at /builds/espressomd/espresso/src/core/communication.cpp:1162

Also, the one reported for npt above has come back.

@fweik
Copy link
Contributor

fweik commented Jan 10, 2019

I rechecked with a newer boost (and ubuntu), with cosmic and boost 1.67 on i386 only the collision detection test fails with [0300cee22312:14302] Read -1, expected 17088, errno = 1 which was fixed somewhere else iirc. My best guess is that there were more bugs in boost than the one I patched.
(I checked 3a66795 with the ubuntu:i386 docker image, where I changed the base image to cosmic)

@mkuron
Copy link
Member Author

mkuron commented Jan 10, 2019

Read -1, expected 17088, errno = 1 sounds similar to #2271, but that isn't actually related. We could of course switch these containers to cosmic, but I'm not convinced this is (exclusively) Boost's fault. The dpd and npt deadlocks looks like it might require a similar fix to Boost, but _ virtual_sites_tracers_ and collision_detection look like genuine bugs

@fweik
Copy link
Contributor

fweik commented Jan 10, 2019

I think the virtual_sites_tracers is genuine, that deadlocks in the lb halo comm. Unfortunately this code is not easy to read (for me). The other one looks like the issues we had' before. (One of the failure modes of the boost problem is that one communication is skipped on the sending side, which leads to a deadlock somewhere later).

@mkuron
Copy link
Member Author

mkuron commented Jan 11, 2019

After upgrading to Boost 1.67, all segfaults are actually gone, so maybe we can still get this pull request into Espresso 4.0.1. However, the coordinate folding issue in collision detection is back, @RudolfWeeber:

68/113 Test  #68: collision_detection .....................***Failed    4.66 sec
.F.....{'bond_centers': HarmonicBond(0): {'r_0': 0.1, 'k': 5000.0, 'r_cut': 0.0}, 'distance': 0.11, 'mode': 'bind_centers'}
.
======================================================================
FAIL: test_bind_at_point_of_collision (__main__.CollisionDetection)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builds/espressomd/espresso/build/testsuite/python/collision_detection.py", line 225, in test_bind_at_point_of_collision
    self.run_test_bind_at_point_of_collision_for_pos(np.array((0, 0, 0)))
  File "/builds/espressomd/espresso/build/testsuite/python/collision_detection.py", line 135, in run_test_bind_at_point_of_collision_for_pos
    self.verify_state_after_bind_at_poc(expected_np)
  File "/builds/espressomd/espresso/build/testsuite/python/collision_detection.py", line 176, in verify_state_after_bind_at_poc
    self.verify_bind_at_poc_pair(base_p1, base_p2, p, p2)
  File "/builds/espressomd/espresso/build/testsuite/python/collision_detection.py", line 220, in verify_bind_at_poc_pair
    np.copy(p.pos_folded), expected_pos, atol=1E-4)
  File "/usr/lib/python2.7/dist-packages/numpy/testing/nose_tools/utils.py", line 1396, in assert_allclose
    verbose=verbose, header=header, equal_nan=equal_nan)
  File "/usr/lib/python2.7/dist-packages/numpy/testing/nose_tools/utils.py", line 779, in assert_array_compare
    raise AssertionError(msg)
AssertionError: 
Not equal to tolerance rtol=1e-07, atol=0.0001

(mismatch 33.3333333333%)
 x: array([6.000000e-02, 1.000000e+00, 8.881784e-18])
 y: array([0.06, 0.  , 0.  ])

@RudolfWeeber
Copy link
Contributor

Please merge pr2422 into this one.

@mkuron mkuron changed the title WIP: CI builds for non-amd64 architectures CI builds for non-amd64 architectures Jan 14, 2019
@mkuron mkuron changed the title CI builds for non-amd64 architectures WIP: CI builds for non-amd64 architectures Jan 14, 2019
@mkuron
Copy link
Member Author

mkuron commented Jan 14, 2019

@RudolfWeeber, it still fails after merging the current master

@fweik
Copy link
Contributor

fweik commented Jan 14, 2019

I don't think it's in the master, you have to merge the mentioned pr. Should be a change in grid.hpp

@mkuron
Copy link
Member Author

mkuron commented Jan 14, 2019

No, it's there. Also, I meant python, not master.

@junghans
Copy link
Member

@mkuron I set this up for another project, but might be nice here to as you would get testing on x86_64, i386 and ppc64le and a couple of different distros. You can use https://src.fedoraproject.org/rpms/espresso/blob/master/f/espresso.spec and a starting point.

Otherwise the collision detection test fails due to some unfolded coordinates
@mkuron mkuron changed the title WIP: CI builds for non-amd64 architectures CI builds for non-amd64 architectures Jan 21, 2019
@mkuron
Copy link
Member Author

mkuron commented Jan 21, 2019

ready to merge

@fweik fweik merged commit 413491f into espressomd:python Jan 23, 2019
@mkuron mkuron deleted the patch-8 branch April 24, 2019 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Some tests fails on i586, ppc64, ppc64le and 390x
4 participants