"I want change it to -march=x86-64 in cmake, How to do it? - Find out how exactly PCL adds -march=native flag. If it does that via variable CMAKE_CXX_FLAGS, then you may try to modify that variable (but note about variables scoping rules). If PCL adds the flag to some property, then you may try modify that property. CMake doesn't give you a control over combined compiler flags. You need to ...
As far as I know, the compilation option for MSVC that tells the compiler to use special available instruction is /arch. On clang/linux, we can use -march=native to automatically detect the archite...
What are the differences and tradeoffs between -march=haswell, -march=core-avx2, and -mavx2 for compiling avx2 intrinsics? I know that -mavx2 is a flag and -march=haswell/core-avx2 are architectures which just translate to a bunch of flags. So -mavx2 is a subset of the other two. But beyond that, how do I choose the right one for my application?
As I understand it, -march=native will detect the ISA and extensions to use from cpuid (which include model, family and stepping information). -march=xxx will use a baseline set of extensions and a baseline ISA. There are a lot of possible combinations of extensions, so only the most relevant were chosen (e.g. skylake-avx512 was added to reflect an important extension of some skylakes). -march ...