Implementation notes: amd64, genji291, crypto_scalarmult/curve25519

Computer: genji291
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20180818
Operation: crypto_scalarmult
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
1200836sandy2xicc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
1201662sandy2xicc -xAVX -O3 -fomit-frame-pointer2018082020180818
1202096sandy2xicc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
1202642sandy2xicc -no-vec2018082020180818
1202964sandy2xicc -xSSE4.1 -O2 -fomit-frame-pointer2018082020180818
1203216sandy2xicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
1204896sandy2xicc -xSSE4.2 -O3 -fomit-frame-pointer2018082020180818
1208914sandy2xicc -xSSE4.2 -O2 -fomit-frame-pointer2018082020180818
1210062sandy2xicc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
1212666sandy2xicc -xAVX -O2 -fomit-frame-pointer2018082020180818
1213702sandy2xicc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
1214234sandy2xicc -xSSE4.1 -O3 -fomit-frame-pointer2018082020180818
1214962sandy2xicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
1216404sandy2xicc2018082020180818
1219722sandy2xicc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
1225434sandy2xicc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
2326562amd64-64icc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
2326674amd64-64icc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
2326926amd64-64icc -xSSE4.1 -O2 -fomit-frame-pointer2018082020180818
2331224amd64-64icc -xAVX -O3 -fomit-frame-pointer2018082020180818
2332624amd64-64icc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
2338840amd64-64icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
2341570amd64-64icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
2341864amd64-64icc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
2343866amd64-64icc2018082020180818
2344020amd64-64icc -xAVX -O2 -fomit-frame-pointer2018082020180818
2344804amd64-64icc -no-vec2018082020180818
2346722amd64-64icc -xSSE4.2 -O3 -fomit-frame-pointer2018082020180818
2351468amd64-64icc -xSSE4.2 -O2 -fomit-frame-pointer2018082020180818
2359602amd64-64icc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
2360064amd64-64icc -xSSE4.1 -O3 -fomit-frame-pointer2018082020180818
2529870amd64-64icc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
2783550donna_c64icc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
2878848donna_c64icc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
2963730ref10icc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
2976176ref10icc -xAVX -O3 -fomit-frame-pointer2018082020180818
2986788ref10icc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
2989644ref10icc -xSSE4.1 -O3 -fomit-frame-pointer2018082020180818
2989840ref10icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
3006962ref10icc -xSSE4.2 -O2 -fomit-frame-pointer2018082020180818
3031658donna_c64icc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
3032638ref10icc -xSSE4.1 -O2 -fomit-frame-pointer2018082020180818
3036642donna_c64icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
3041346donna_c64icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
3049760donna_c64icc -no-vec2018082020180818
3052686ref10icc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
3063606ref10icc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
3064152ref10icc -no-vec2018082020180818
3068072ref10icc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
3073112donna_c64icc -xSSE4.2 -O3 -fomit-frame-pointer2018082020180818
3073546donna_c64icc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
3074694ref10icc -xAVX -O2 -fomit-frame-pointer2018082020180818
3074946ref10icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
3080994donna_c64icc -xAVX -O2 -fomit-frame-pointer2018082020180818
3090192donna_c64icc -xAVX -O3 -fomit-frame-pointer2018082020180818
3099012donna_c64icc -xSSE4.1 -O3 -fomit-frame-pointer2018082020180818
3102428donna_c64icc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
3107706donna_c64icc -xSSE4.1 -O2 -fomit-frame-pointer2018082020180818
3111780ref10icc2018082020180818
3125010donna_c64icc -xSSE4.2 -O2 -fomit-frame-pointer2018082020180818
3128468ref10icc -xSSE4.2 -O3 -fomit-frame-pointer2018082020180818
3160500donna_c64icc2018082020180818
3181626donna_c64icc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
3237626ref10icc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
3367140amd64-51icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
3372628amd64-51icc -xSSE4.1 -O2 -fomit-frame-pointer2018082020180818
3374350amd64-51icc -xAVX -O2 -fomit-frame-pointer2018082020180818
3375596amd64-51icc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
3377598amd64-51icc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
3378788amd64-51icc2018082020180818
3378942amd64-51icc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
3380160amd64-51icc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
3383520amd64-51icc -xSSE4.2 -O2 -fomit-frame-pointer2018082020180818
3385732amd64-51icc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
3387762amd64-51icc -xSSE4.1 -O3 -fomit-frame-pointer2018082020180818
3401258amd64-51icc -xAVX -O3 -fomit-frame-pointer2018082020180818
3401664amd64-51icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
3402000amd64-51icc -no-vec2018082020180818
3412724amd64-51icc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
3697932amd64-51icc -xSSE4.2 -O3 -fomit-frame-pointer2018082020180818
4094566donnaicc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
4114684donnaicc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
4123000donnaicc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
4125198donnaicc -no-vec2018082020180818
4132716donnaicc -xAVX -O3 -fomit-frame-pointer2018082020180818
4136888donnaicc -xAVX -O2 -fomit-frame-pointer2018082020180818
4240642donnaicc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
4257582donnaicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
4276930donnaicc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
4292218donnaicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
4294472donnaicc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
48730654reficc -xMIC-AVX512 -O2 -fomit-frame-pointer2018082020180818
54254172reficc -xMIC-AVX512 -O3 -fomit-frame-pointer2018082020180818
54877284reficc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2018082020180818
58762144reficc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2018082020180818
61292392reficc -xCORE-AVX2 -O2 -fomit-frame-pointer2018082020180818
64322412reficc -xCORE-AVX2 -O3 -fomit-frame-pointer2018082020180818
64529262reficc2018082020180818
64656718reficc -xSSE4.2 -O2 -fomit-frame-pointer2018082020180818
64782704reficc -xSSE4.1 -O2 -fomit-frame-pointer2018082020180818
65062214reficc -xAVX -O2 -fomit-frame-pointer2018082020180818
65207198reficc -no-vec2018082020180818
65255666reficc -xCORE-AVX-I -O2 -fomit-frame-pointer2018082020180818
67412576reficc -xCORE-AVX-I -O3 -fomit-frame-pointer2018082020180818
67523694reficc -xSSE4.2 -O3 -fomit-frame-pointer2018082020180818
67862648reficc -xAVX -O3 -fomit-frame-pointer2018082020180818
67889276reficc -xSSE4.1 -O3 -fomit-frame-pointer2018082020180818

Test failure

Implementation: crypto_scalarmult/curve25519/donna
Compiler: icc
error 111

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
icc donna
icc -xSSE4.1 -O2 -fomit-frame-pointer donna
icc -xSSE4.1 -O3 -fomit-frame-pointer donna
icc -xSSE4.2 -O2 -fomit-frame-pointer donna
icc -xSSE4.2 -O3 -fomit-frame-pointer donna

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: cc
smult.c: smult.c:149:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsquare_times(felem output, const felem in, limb count) {
smult.c: ^
smult.c: smult.c:100:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fmul(felem output, const felem in2, const felem in) {
smult.c: ^
smult.c: smult.c:70:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fscalar_product(felem output, const felem in, const limb scalar) {
smult.c: ^
smult.c: smult.c:56:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fdifference_backwards(felem out, const felem in) {
smult.c: ^
smult.c: smult.c:41:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsum(limb *output, const limb *in) {
smult.c: ^
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc donna_c64

Compiler output

Implementation: crypto_scalarmult/curve25519/amd64-51
Compiler: cc
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 642, namely:
CompilerImplementations
cc amd64-51 amd64-64 donna ref ref10 sandy2x
gcc amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -fno-schedule-insns -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -fno-schedule-insns -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -fno-schedule-insns -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -fno-schedule-insns -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=corei7 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=k8 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=k8 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=k8 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=k8 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=nocona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=nocona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=nocona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=nocona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=barcelona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=barcelona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=barcelona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=barcelona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=k8 -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=k8 -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=k8 -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=k8 -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=nocona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=nocona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=nocona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -march=nocona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: gcc
smult.c: smult.c:149:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsquare_times(felem output, const felem in, limb count) {
smult.c: ^~~~~~~~~~~~~
smult.c: smult.c:100:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fmul(felem output, const felem in2, const felem in) {
smult.c: ^~~~
smult.c: smult.c:70:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fscalar_product(felem output, const felem in, const limb scalar) {
smult.c: ^~~~~~~~~~~~~~~
smult.c: smult.c:56:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fdifference_backwards(felem out, const felem in) {
smult.c: ^~~~~~~~~~~~~~~~~~~~~
smult.c: smult.c:41:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsum(limb *output, const limb *in) {
smult.c: ^~~~
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 106, namely:
CompilerImplementations
gcc donna_c64
gcc -O2 -fomit-frame-pointer donna_c64
gcc -O3 -fomit-frame-pointer donna_c64
gcc -O -fomit-frame-pointer donna_c64
gcc -Os -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -O2 -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -O3 -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -O -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops donna_c64
gcc -funroll-loops -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer donna_c64
gcc -m64 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -O -fomit-frame-pointer donna_c64
gcc -m64 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer donna_c64
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -O -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer donna_c64
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7 -O -fomit-frame-pointer donna_c64
gcc -m64 -march=corei7 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=k8 -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=k8 -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=k8 -O -fomit-frame-pointer donna_c64
gcc -m64 -march=k8 -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer donna_c64
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer donna_c64
gcc -m64 -march=nocona -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=nocona -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=nocona -O -fomit-frame-pointer donna_c64
gcc -m64 -march=nocona -Os -fomit-frame-pointer donna_c64
gcc -march=barcelona -O2 -fomit-frame-pointer donna_c64
gcc -march=barcelona -O3 -fomit-frame-pointer donna_c64
gcc -march=barcelona -O -fomit-frame-pointer donna_c64
gcc -march=barcelona -Os -fomit-frame-pointer donna_c64
gcc -march=k8 -O2 -fomit-frame-pointer donna_c64
gcc -march=k8 -O3 -fomit-frame-pointer donna_c64
gcc -march=k8 -O -fomit-frame-pointer donna_c64
gcc -march=k8 -Os -fomit-frame-pointer donna_c64
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv donna_c64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv donna_c64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv donna_c64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv donna_c64
gcc -march=nocona -O2 -fomit-frame-pointer donna_c64
gcc -march=nocona -O3 -fomit-frame-pointer donna_c64
gcc -march=nocona -O -fomit-frame-pointer donna_c64
gcc -march=nocona -Os -fomit-frame-pointer donna_c64

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
smult.c: smult.c:149:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsquare_times(felem output, const felem in, limb count) {
smult.c: ^~~~~~~~~~~~~
smult.c: smult.c:100:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fmul(felem output, const felem in2, const felem in) {
smult.c: ^~~~
smult.c: smult.c:70:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fscalar_product(felem output, const felem in, const limb scalar) {
smult.c: ^~~~~~~~~~~~~~~
smult.c: smult.c:56:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fdifference_backwards(felem out, const felem in) {
smult.c: ^~~~~~~~~~~~~~~~~~~~~
smult.c: smult.c:41:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsum(limb *output, const limb *in) {
smult.c: ^~~~
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status
smult.c: smult.c:149:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsquare_times(felem output, const felem in, limb count) {
smult.c: ^~~~~~~~~~~~~
smult.c: smult.c:100:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fmul(felem output, const felem in2, const felem in) {
smult.c: ^~~~
smult.c: smult.c:70:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fscalar_product(felem output, const felem in, const limb scalar) {
smult.c: ^~~~~~~~~~~~~~~
smult.c: smult.c:56:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fdifference_backwards(felem out, const felem in) {
smult.c: ^~~~~~~~~~~~~~~~~~~~~
smult.c: smult.c:41:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsum(limb *output, const limb *in) {
smult.c: ^~~~
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer donna_c64
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer donna_c64
gcc -m64 -march=barcelona -O -fomit-frame-pointer donna_c64
gcc -m64 -march=barcelona -Os -fomit-frame-pointer donna_c64

Compiler output

Implementation: crypto_scalarmult/curve25519/amd64-51
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/knownrandombytes.o: In function `randombytes':
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memcpy'
try.c: knownrandombytes.c:(.text+0x...): undefined reference to `_intel_fast_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-api.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2':
try.c: api.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: /scratch_lustre_DDN7k/bdolbeaur/supercop-20180818/supercop-data/genji291/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): In function `crypto_stream_chacha20_dolbeau_amd64_avx2_ECRYPT_keystream_bytes':
try.c: chacha.c:(.text+0x...): undefined reference to `__intel_mic_avx512f_memset'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=barcelona -O -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x
gcc -m64 -march=barcelona -Os -fomit-frame-pointer amd64-51 amd64-64 donna ref ref10 sandy2x

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: icc
smult.c: smult.c(40): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(55): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(69): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(99): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(148): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
icc donna_c64
icc -no-vec donna_c64
icc -xAVX -O2 -fomit-frame-pointer donna_c64
icc -xAVX -O3 -fomit-frame-pointer donna_c64
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer donna_c64
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer donna_c64
icc -xCORE-AVX-I -O2 -fomit-frame-pointer donna_c64
icc -xCORE-AVX-I -O3 -fomit-frame-pointer donna_c64
icc -xCORE-AVX2 -O2 -fomit-frame-pointer donna_c64
icc -xCORE-AVX2 -O3 -fomit-frame-pointer donna_c64
icc -xMIC-AVX512 -O2 -fomit-frame-pointer donna_c64
icc -xMIC-AVX512 -O3 -fomit-frame-pointer donna_c64
icc -xSSE4.1 -O2 -fomit-frame-pointer donna_c64
icc -xSSE4.1 -O3 -fomit-frame-pointer donna_c64
icc -xSSE4.2 -O2 -fomit-frame-pointer donna_c64
icc -xSSE4.2 -O3 -fomit-frame-pointer donna_c64