As you have pointed out, besides producing binaries incompatibility with older cpus, march=native isn't necessarily beneficial There are a lot of possible combinations of extensions, so only the most relevant were chosen (e.g It improves performance in some cases such as numerical computing
Awakenings: Marvelous Month of March
But it is not beneficial in many other cases, and is sometimes detrimental.
But beyond that, how do i choose the right one for my application?
Gentoo wiki told me the following Unless you have a specific reaso. The compiler i'm using is a proprietary As far as i know, the compilation option for msvc that tells the compiler to use special available instruction is /arch
I'm compiling my c++ app using gcc 4.3