To see how much does gcc uses these 'new' instructions --
Code: Select all
/usr/x86_64-mypl-linux-gnu/usr/bin/cat --help
Usage: /usr/x86_64-mypl-linux-gnu/usr/bin/cat [OPTION]... [FILE]...
Concatenate FILE(s) to standard output.
With no FILE, or when FILE is -, read standard input.
-A, --show-all equivalent to -vET
-b, --number-nonblank number nonempty output lines, overrides -n
-e equivalent to -vE
-E, --show-ends display $ at end of each line
-n, --number number all output lines
-s, --squeeze-blank suppress repeated empty output lines
-t equivalent to -vT
-T, --show-tabs display TAB characters as ^I
-u (ignored)
-v, --show-nonprinting use ^ and M- notation, except for LFD and TAB
--help display this help and exit
--version output version information and exit
Examples:
/usr/x86_64-mypl-linux-gnu/usr/bin/cat f - g Output f's contents, then standard input, then g's contents.
/usr/x86_64-mypl-linux-gnu/usr/bin/cat Copy standard input to standard output.
Illegal instruction (core dumped)So it is true, that 99.9% of prebuilt binary applications (even the kernel) are NOT using a processor's new instructions to maintain compatibility? And so if you buy a new processors, it's performance gains in 99.9% of the cases (when using prebuilt binaries) are limited to how fast legacy instructions are executed?
For the same reason I was wonder why this benchmark works with the same binaries with avx512 disabled.


