1

我正在构建一个使用 OpenCV 的应用程序,它将在各种 Windows 计算机(使用 Win7、Win8、Win10)上运行。

现在我发现我的应用程序在某些计算机上随机崩溃。经过大量谷歌搜索后,我意识到在 OpenCV 中启用 SSE3 会导致不支持 SSE3 的处理器上的非法指令崩溃。

http://answers.opencv.org/question/18001/illegal-instruction-when-running-any-compiled-opencv-demo-binary-sse3-flag/

https://bugs.launchpad.net/linuxmint/+bug/1258259

所以这是我的问题:你们中有人知道哪些处理器标志是“安全的”。我了解他们的工作,但我不知道处理器支持例如 SSE42 有多普遍。

换句话说:您认为在编译 OpenCV 时应该禁用哪些标志?

OCV_OPTION:

ENABLE_SSE
ENABLE_SSE2
ENABLE_SSE3
ENABLE_SSSE3
ENABLE_SSE41
ENABLE_SSE42
ENABLE_POPCNT
ENABLE_AVX
ENABLE_AVX2
ENABLE_FMA3
4

0 回答 0