Implementation notes: amd64, pmnod003, crypto_hash/simd256

Computer: pmnod003
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: simd256
TimeImplementationCompilerBenchmark dateSUPERCOP version
11844vect128icc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
12160vect128icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
12188vect128icc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
42396sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
44380optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
49992sphlibicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
51228sphlibicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
51442sphlibicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
51580sphlibicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
52042sphlibicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
52488sphlibicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
53154sphlibicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
53792sphlibicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
53860sphlibicc -xAVX -O2 -fomit-frame-pointer2019081920190816
54022sphlibicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
54748sphlibicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
54752sphlibicc -xAVX -O3 -fomit-frame-pointer2019081920190816
54776sphlibicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
55184sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
55780sphlibicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
56766sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
58018sphlib-smallicc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
58808sphlib-smallicc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
59164sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
59708sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
62538sphlib-smallicc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
63316sphlib-smallicc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
65638sphlib-smallicc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
65676sphlib-smallicc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
66330sphlib-smallicc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
66974sphlib-smallicc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
67544sphlib-smallicc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
67578sphlib-smallicc -xAVX -O3 -fomit-frame-pointer2019081920190816
67590sphlib-smallicc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
67612sphlib-smallicc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
68586sphlib-smallicc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
69102sphlib-smallicc -xAVX -O2 -fomit-frame-pointer2019081920190816
72354sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
73434opticc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
73636opticc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
74218opticc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
74438sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
74648opticc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
74830opticc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
75232opticc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
78746opticc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
79376sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
79410opticc -xAVX -O3 -fomit-frame-pointer2019081920190816
79562optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
79610opticc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
79624opticc -xAVX -O2 -fomit-frame-pointer2019081920190816
81514opticc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
81542opticc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
82244opticc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
82316opticc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
93798optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
116288optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816
3161024refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019081920190816
3161820refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019081920190816
3284998reficc -xCORE-AVX512 -O2 -fomit-frame-pointer2019081920190816
3291020reficc -xAVX -O3 -fomit-frame-pointer2019081920190816
3295598refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019081920190816
3322850reficc -xCORE-AVX-I -O2 -fomit-frame-pointer2019081920190816
3325218reficc -xAVX -O2 -fomit-frame-pointer2019081920190816
3328202reficc -xCORE-AVX512 -O3 -fomit-frame-pointer2019081920190816
3341692reficc -xSSE4.2 -O3 -fomit-frame-pointer2019081920190816
3343512reficc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019081920190816
3345044reficc -xSSE4.1 -O3 -fomit-frame-pointer2019081920190816
3349588reficc -xCORE-AVX-I -O3 -fomit-frame-pointer2019081920190816
3356368reficc -xSSE4.1 -O2 -fomit-frame-pointer2019081920190816
3356454reficc -xSSE4.2 -O2 -fomit-frame-pointer2019081920190816
3358968reficc -xCORE-AVX2 -O2 -fomit-frame-pointer2019081920190816
3362700reficc -xCORE-AVX2 -O3 -fomit-frame-pointer2019081920190816
3390120reficc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019081920190816
7294896refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019081920190816

Compiler output

Implementation: crypto_hash/simd256/vect128
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
vector.c: vector.c: In function 'fft64':
vector.c: vector.c:73: warning: "X" redefined
vector.c: 73 | #define X(i) X##i
vector.c: |
vector.c: vector.c:68: note: this is the location of the previous definition
vector.c: 68 | #define X(i) A[i]
vector.c: |
vector.c: vector.c: In function 'rounds512':
vector.c: vector.c:796: warning: "STEP_1" redefined
vector.c: 796 | #define STEP_1(a,b,c,d,w,fun,r,s,z) \
vector.c: |
vector.c: vector.c:542: note: this is the location of the previous definition
vector.c: 542 | #define STEP_1(a,b,c,d,w,fun,r,s,z) \
vector.c: |
vector.c: vector.c:805: warning: "STEP_2" redefined
vector.c: 805 | #define STEP_2(a,b,c,d,w,fun,r,s) \
vector.c: |
vector.c: vector.c:566: note: this is the location of the previous definition
vector.c: 566 | #define STEP_2(a,b,c,d,w,fun,r,s) \
vector.c: |
vector.c: vector.c:808: warning: "STEP" redefined
vector.c: 808 | #define STEP(a,b,c,d,w1,w2,fun,r,s,z) \
vector.c: |
vector.c: vector.c:571: note: this is the location of the previous definition
vector.c: 571 | #define STEP(a,b,c,d,w,fun,r,s,z) \
vector.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv vect128
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv vect128
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv vect128
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv vect128

Compiler output

Implementation: crypto_hash/simd256/vect128
Compiler: icc -xAVX -O2 -fomit-frame-pointer
vector.c: vector.c(73): warning #47: incompatible redefinition of macro "X" (declared at line 68)
vector.c: #define X(i) X##i
vector.c: ^
vector.c:
vector.c: vector.c(796): warning #47: incompatible redefinition of macro "STEP_1" (declared at line 542)
vector.c: #define STEP_1(a,b,c,d,w,fun,r,s,z) \
vector.c: ^
vector.c:
vector.c: vector.c(805): warning #47: incompatible redefinition of macro "STEP_2" (declared at line 566)
vector.c: #define STEP_2(a,b,c,d,w,fun,r,s) \
vector.c: ^
vector.c:
vector.c: vector.c(808): warning #47: incompatible redefinition of macro "STEP" (declared at line 571)
vector.c: #define STEP(a,b,c,d,w1,w2,fun,r,s,z) \
vector.c: ^
vector.c:
vector.c: vector.c(829): warning #47: incompatible redefinition of macro "ROUND" (declared at line 579)
vector.c: #define ROUND(h0,l0,u0,h1,l1,u1,h2,l2,u2,h3,l3,u3, \
vector.c: ^
vector.c:
vector.c: vector.c(854): warning #47: incompatible redefinition of macro "PERM_START" (declared at line 852)
vector.c: #define PERM_START 4
vector.c: ^
vector.c:
vector.c: vector.c(856): warning #47: incompatible redefinition of macro "PERM_START" (declared at line 854)
vector.c: ...

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