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

Remove -msse2 -msse3 -msse4 -mpopcnt flags from docker builds #873

Closed
pierotofy opened this issue Aug 8, 2018 · 4 comments
Closed

Remove -msse2 -msse3 -msse4 -mpopcnt flags from docker builds #873

pierotofy opened this issue Aug 8, 2018 · 4 comments
Assignees

Comments

@pierotofy
Copy link
Member

This is currently forcing SSE4 instructions to be included in mvs-texturing (and related mve apps): OpenDroneMap/WebODM#330 (comment)

A simple fix would be to filter them out in https://github.com/OpenDroneMap/OpenDroneMap/blob/master/docker/g%2B%2B and https://github.com/OpenDroneMap/OpenDroneMap/blob/master/docker/gcc

People re-building docker images using the standard Dockerfile and using older CPUs would still have the problem however.

I'll see if perhaps we can get it fixed directly in MVE.

@pierotofy pierotofy self-assigned this Aug 8, 2018
@pierotofy pierotofy changed the title [Improvement] Remove -msse2 -msse3 -msse4 -mpopcnt flags from docker builds Remove -msse2 -msse3 -msse4 -mpopcnt flags from docker builds Aug 8, 2018
@pierotofy
Copy link
Member Author

MVE now ships with -march=native flag so this can be closed. simonfuhrmann/mve#441 (comment)

@nchamo
Copy link
Member

nchamo commented May 23, 2019

Hey everyone!

I just wanted to add a comment for people that might still experience the problem when running WebODM with docker in the future. The doc says that you can't run the docker images if you have a processor that doesn't support SSE* instructions. That is actually not true.

With the change made to MVE, the flag "march=native" adds all optimization flags applicable to the hardware where the code is compiled. So the problem is that when the docker image is created, the SSE* flags that your hardware might not support are actually added, because it was built in a place where they were supported. So instead of building the different repositories natively, you could just re-build the image on your own hardware and that will fix the problem.

I found that easier than installing everything natively.

That's it 😄

@franchyze923
Copy link

Hey @nchamo I'm running into this issue with my AMD Phenom II X6 1090T CPU. I think your recommendation of rebuilding the image would work for me, however I'm not sure how to do that? Right now I just clone the project and run the startup.sh file. How do I go about rebuilding? Thanks

@pierotofy
Copy link
Member Author

Could we move this conversation over to the forum at https://community.opendronemap.org? 🙏 The forum is the right place to ask questions (we try to keep the GitHub issue tracker for feature requests and bugs only). Thank you! 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants