Implementation notes: amd64, oki, crypto_kem/ntrukem743

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_kem
Primitive: ntrukem743
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
653514? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019011920181123
656324? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011920181123
666658? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011920181123
698038? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011920181123
701614? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011920181123
733994? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019011920181123
735366? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019011920181123
745492? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019011920181123
746010? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011920181123
747108? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019011920181123
751116? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019011920181123
751260? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011920181123
759782? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019011920181123
759916? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011920181123
762152? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019011920181123
762436? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019011920181123
774940? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019011920181123
775742? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019011920181123
825734? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019011920181123
826290? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019011920181123
830174? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019011920181123
830740? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019011920181123
836832? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019011920181123
837606? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019011920181123
838090? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019011920181123
849162? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019011920181123
849248? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019011920181123
863080? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011920181123
864758? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011920181123
914364? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019011920181123
915420? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011920181123
1194854? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011920181123
1196330? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011920181123
1196366? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019011920181123
1196600? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019011920181123
2848276? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019011920181123
2850280? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011920181123
2850516? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019011920181123
2851802? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019011920181123
3654432? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019011920181123
3655502? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019011920181123
3656548? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011920181123
3673714? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019011920181123
3675558? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011920181123
3716282? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019011920181123
3716640? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019011920181123
3718676? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019011920181123
3719788? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019011920181123
3721998? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011920181123
3722544? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011920181123
3728302? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011920181123
3728306? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011920181123
3730610? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019011920181123
3731296? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019011920181123
3731786? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019011920181123
3732440? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011920181123
3734832? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019011920181123
3735220? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019011920181123
3737074? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019011920181123
3739896? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019011920181123
3747544? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019011920181123
3748142? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019011920181123
4169248? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019011920181123
4169426? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019011920181123
4171242? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019011920181123
4171368? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011920181123
4174084? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019011920181123
4175064? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019011920181123
4177710? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019011920181123
4178636? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019011920181123
4180254? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019011920181123
4592118? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019011920181123
4593690? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019011920181123
4593740? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011920181123
4595062? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011920181123
4595116? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019011920181123
4595576? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019011920181123
4595892? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019011920181123
4597288? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019011920181123
4598200? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019011920181123
4598430? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011920181123
4598882? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019011920181123
4604522? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011920181123
4607622? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019011920181123
4609728? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019011920181123
4618916? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019011920181123
4621568? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019011920181123
4624098? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019011920181123
4628292? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011920181123
7225292? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2019011920181123
7225326? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019011920181123
7225534? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2019011920181123
7229168? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011920181123
7230284? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011920181123
7231396? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019011920181123
7231934? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019011920181123
7232892? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011920181123
7233542? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019011920181123
7234224? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019011920181123
7238058? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019011920181123
7239492? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019011920181123
7241154? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011920181123
7245960? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011920181123
7247076? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019011920181123
7248532? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2019011920181123
7261284? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011920181123
7262060? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2019011920181123
7265830? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011920181123
7267728? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019011920181123
7267762? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019011920181123
7268350? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019011920181123
7268660? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019011920181123
7269150? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019011920181123
7270226? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019011920181123
7272022? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011920181123
7275212? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019011920181123
16614448? ? ?? ? ?refgcc2019011920181123
16614770? ? ?? ? ?refgcc_-funroll-loops2019011920181123
16771090? ? ?? ? ?refcc2019011920181123

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x103b1b0: v4i64 = X86ISD::VTRUNC 0x103afe0
try.c: 0x103afe0: v16i32 = vselect 0x10276e0, 0xfcf790, 0x103aeb0
try.c: 0x10276e0: v4i1 = X86ISD::PCMPGTM 0x10246b0, 0xfc3ba0
try.c: 0x10246b0: v4i64 = X86ISD::VBROADCAST 0xfc3f30
try.c: 0xfc3f30: i64,ch = load<LD8[%uglygep72]> 0xf1ddd0, 0xfc6690, undef:i64
try.c: 0xfc6690: i64 = add 0x1025590, 0xfe5ff0
try.c: 0x1025590: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1021030: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xfe5ff0: i64 = shl 0x10207e0, Constant:i8<3>
try.c: 0x10207e0: i64,ch = CopyFromReg 0xf1ddd0, Register:i64 %vreg50
try.c: 0x1025a50: i64 = Register %vreg50
try.c: 0xfd1a70: i8 = Constant<3>
try.c: 0x1022d20: i64 = undef
try.c: 0xfc3ba0: v4i64,ch = CopyFromReg 0xf1ddd0, Register:v4i64 %vreg13
try.c: 0xfbcd80: v4i64 = Register %vreg13
try.c: 0xfcf790: v16i32 = X86ISD::VBROADCAST 0x1020a40
try.c: 0x1020a40: i32,ch = load<LD4[ConstantPool]> 0xf1ddd0, 0x103ab20, undef:i64
try.c: 0x103ab20: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xfd3820: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1022d20: i64 = undef
try.c: 0x103aeb0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x103ad80: i32 = Constant<0>
try.c: 0x103ad80: i32 = Constant<0>
try.c: 0x103ad80: i32 = Constant<0>
try.c: 0x103ad80: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x17cedd0: v4i64 = X86ISD::VTRUNC 0x17cec00
try.c: 0x17cec00: v16i32 = vselect 0x17cb840, 0x1776fd0, 0x17cead0
try.c: 0x17cb840: v4i1 = X86ISD::PCMPGTM 0x17b82c0, 0x1777d80
try.c: 0x17b82c0: v4i64 = X86ISD::VBROADCAST 0x1778110
try.c: 0x1778110: i64,ch = load<LD8[%uglygep72]> 0x16b1dd0, 0x17b1eb0, undef:i64
try.c: 0x17b1eb0: i64 = add 0x17b91a0, 0x174de60
try.c: 0x17b91a0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x17b4c40: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x174de60: i64 = shl 0x17b43f0, Constant:i8<3>
try.c: 0x17b43f0: i64,ch = CopyFromReg 0x16b1dd0, Register:i64 %vreg50
try.c: 0x17b9660: i64 = Register %vreg50
try.c: 0x1751890: i8 = Constant<3>
try.c: 0x17b6930: i64 = undef
try.c: 0x1777d80: v4i64,ch = CopyFromReg 0x16b1dd0, Register:v4i64 %vreg13
try.c: 0x1766310: v4i64 = Register %vreg13
try.c: 0x1776fd0: v16i32 = X86ISD::VBROADCAST 0x17b4650
try.c: 0x17b4650: i32,ch = load<LD4[ConstantPool]> 0x16b1dd0, 0x17ce740, undef:i64
try.c: 0x17ce740: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x177ab30: i64 = TargetConstantPool<i32 1> 0
try.c: 0x17b6930: i64 = undef
try.c: 0x17cead0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x17ce9a0: i32 = Constant<0>
try.c: 0x17ce9a0: i32 = Constant<0>
try.c: 0x17ce9a0: i32 = Constant<0>
try.c: 0x17ce9a0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref