Implementation notes: amd64, gpu, crypto_stream/amastrid

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_stream
Primitive: amastrid
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
11270021736 32 246240672 1656 3368refg++_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082420190816
11631619310 24 246235727 1640 3368refg++_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082420190816
12061219310 24 246235727 1640 3368refg++_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082420190816
12283618726 24 246235195 1640 3368refg++_-m64_-march=k8_-O2_-fomit-frame-pointer2019082420190816
12307218414 24 246234560 1624 3368refg++_-march=barcelona_-O_-fomit-frame-pointer2019082420190816
12333230235 32 246251456 1656 3368refg++_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082420190816
12377220178 32 246239072 1656 3368refg++_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082420190816
12407237758 48 492435731 1640 3368refg++_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082420190816
12473621736 32 246240672 1656 3368refg++_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082420190816
12487619221 24 246235344 1624 3368refg++_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082420190816
12518018879 24 246235731 1640 3368refg++_-march=barcelona_-O2_-fomit-frame-pointer2019082420190816
12560019229 24 246235344 1624 3368refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082420190816
12612019355 32 246237840 1656 3368refg++_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082420190816
12648419310 24 246235727 1640 3368refg++_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082420190816
12648418445 24 246234608 1624 3368refg++_-march=k8_-O_-fomit-frame-pointer2019082420190816
12706019151 24 246235555 1640 3368refg++_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082420190816
12710419221 24 246235344 1624 3368refg++_-m64_-march=corei7_-O_-fomit-frame-pointer2019082420190816
12757618476 24 246234475 1640 3368refg++_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082420190816
12770019355 32 246237840 1656 3368refg++_-march=nocona_-O3_-fomit-frame-pointer2019082420190816
12790019544 32 246238464 1656 3368refg++_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082420190816
12929619544 32 246238480 1656 3368refg++_-m64_-march=core2_-O3_-fomit-frame-pointer2019082420190816
12965218710 24 246235155 1640 3368refg++_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082420190816
12970420178 32 246239072 1656 3368refg++_-m64_-O3_-fomit-frame-pointer2019082420190816
13018421735 32 246240584 1656 3368refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082420190816
13148418350 24 246234464 1624 3368refg++_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082420190816
13213219309 24 246235727 1640 3368refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082420190816
13226418350 24 246234464 1624 3368refg++_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082420190816
13233619152 24 246235555 1640 3368refg++_-m64_-O2_-fomit-frame-pointer2019082420190816
13248418519 24 246234672 1624 3368refg++_-m64_-march=nocona_-O_-fomit-frame-pointer2019082420190816
13265218710 24 246235155 1640 3368refg++_-m64_-march=core2_-O2_-fomit-frame-pointer2019082420190816
13268827719 24 246247423 1640 3368refg++_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082420190816
13342828229 24 246247792 1624 3368refg++_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082420190816
13345620700 24 246239912 1648 3368refg++_-m64_-march=k8_-O3_-fomit-frame-pointer2019082420190816
13368818519 24 246234672 1624 3368refg++_-march=nocona_-O_-fomit-frame-pointer2019082420190816
13378419221 24 246235344 1624 3368refg++_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082420190816
13428419221 24 246235344 1624 3368refg++_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082420190816
13454020700 24 246239912 1648 3368refg++_-march=k8_-O3_-fomit-frame-pointer2019082420190816
13466418710 24 246235155 1640 3368refg++_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082420190816
13474019152 24 246235555 1640 3368refg++_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082420190816
13503220145 32 246238864 1656 3368refg++_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082420190816
13523641930 48 492440440 1648 3368refg++_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082420190816
13547620178 32 246239072 1656 3368refg++_-O3_-fomit-frame-pointer2019082420190816
13645619225 24 246235344 1624 3368refg++_-m64_-O_-fomit-frame-pointer2019082420190816
13674018476 24 246234475 1640 3368refg++_-march=nocona_-O2_-fomit-frame-pointer2019082420190816
13690820965 24 246240440 1648 3368refg++_-march=barcelona_-O3_-fomit-frame-pointer2019082420190816
13781236828 48 492434560 1624 3368refg++_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082420190816
13855218726 24 246235195 1640 3368refg++_-march=k8_-O2_-fomit-frame-pointer2019082420190816
13916819544 32 246238400 1656 3368refg++_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082420190816
13941219152 24 246235555 1640 3368refg++_-O2_-fomit-frame-pointer2019082420190816
14026019225 24 246235344 1624 3368refg++_-fno-schedule-insns_-O_-fomit-frame-pointer2019082420190816
14108819225 24 246235344 1624 3368refg++_-O_-fomit-frame-pointer2019082420190816
14282018445 24 246234608 1624 3368refg++_-m64_-march=k8_-O_-fomit-frame-pointer2019082420190816
14316421736 32 246240672 1656 3368refg++_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082420190816
14381618350 24 246234464 1624 3368refg++_-m64_-march=core2_-O_-fomit-frame-pointer2019082420190816
15491224158 48 492426304 1072 3336refg++_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082420190816
15603612079 24 246226304 1072 3336refg++_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082420190816
15715212079 24 246226304 1072 3336refg++_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082420190816
15936812079 24 246226304 1072 3336refg++_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082420190816
16162412079 24 246226304 1072 3336refg++_-m64_-Os_-fomit-frame-pointer2019082420190816
16910412096 24 246226328 1072 3336refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082420190816
17036412382 24 246226648 1072 3336refg++_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082420190816
17092412079 24 246226304 1072 3336refg++_-march=k8_-Os_-fomit-frame-pointer2019082420190816
17393612079 24 246226304 1072 3336refg++_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082420190816
17461612079 24 246226304 1072 3336refg++_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082420190816
17472412079 24 246226304 1072 3336refg++_-m64_-march=core2_-Os_-fomit-frame-pointer2019082420190816
17567612079 24 246226304 1072 3336refg++_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082420190816
17633612077 24 246226288 1072 3336refg++_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082420190816
17659212079 24 246226304 1072 3336refg++_-m64_-march=k8_-Os_-fomit-frame-pointer2019082420190816
17976812079 24 246226304 1072 3336refg++_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082420190816
18014412079 24 246226304 1072 3336refg++_-march=barcelona_-Os_-fomit-frame-pointer2019082420190816
18301612079 24 246226304 1072 3336refg++_-Os_-fomit-frame-pointer2019082420190816
18344812077 24 246226288 1072 3336refg++_-march=nocona_-Os_-fomit-frame-pointer2019082420190816
39533620912 24 244638283 1104 3320refg++2019082420190816

Test failure

Implementation: ref
Security model: unknown
Compiler: g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
g++ -m64 -march=core-avx2 -O -fomit-frame-pointer ref
g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang++ -O3 -fomit-frame-pointer -Qunused-arguments
Amastrid.cpp: In file included from Amastrid.cpp:3:
Amastrid.cpp: ./Amastrid.h:241:13: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: for(register int i=0; i<len; i++)
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: ./Amastrid.h:250:13: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: for(register int i=0; i<len; i++,pbytes+=4)
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: In file included from Amastrid.cpp:4:
Amastrid.cpp: ./Expansion.h:55:9: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: register BYTE *p1, *p2;
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: ./Expansion.h:55:9: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: register BYTE *p1, *p2;
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: ./Expansion.h:56:9: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: register BYTE temp, v1, v2;
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: ./Expansion.h:56:9: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: register BYTE temp, v1, v2;
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: ./Expansion.h:56:9: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: register BYTE temp, v1, v2;
Amastrid.cpp: ^~~~~~~~~
Amastrid.cpp: ./Expansion.h:75:9: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
Amastrid.cpp: register BYTE *p1, *p2;
Amastrid.cpp: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer -Qunused-arguments ref
clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang++ -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang++ -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref