ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

This is a error that can appear on 32bit machines when using Eigen. Eigen tries to leverage SIMD instructions/vectorization, but for that to work all data has to be properly aligned in memory. On 32bit machines this isn't guaranteed, so the user has to take care to use macros like EIGEN_MAKE_ALIGNED_OPERATOR_NEW properly. The quick fix "solution" is compiling the software giving that error yourself and setting the EIGEN_DONT_VECTORIZE define. In that case, the speedup due to vectorization is lost however.

From my experience it sometimes can be quite painful to avoid these alignment errors.

This is a an error that can appear on 32bit machines when using Eigen. Eigen tries to leverage SIMD instructions/vectorization, but for that to work all data has to be properly aligned in memory. On 32bit machines this isn't guaranteed, so the user has to take care to use macros like EIGEN_MAKE_ALIGNED_OPERATOR_NEW properly. The quick fix "solution" is compiling the software giving that error yourself and setting the EIGEN_DONT_VECTORIZE define. In that case, the speedup due to vectorization is lost however.

From my experience it sometimes can be quite painful to avoid these alignment errors.