Implementation notes: amd64, genji262, crypto_kem/rsa2048

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: rsa2048
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
28258127152 40 20454601 7120 3592ntlicpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
28278367152 40 20455009 7120 3592ntlicpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
28303007152 40 20455009 7120 3592ntlicpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
28310047152 40 20454593 7120 3592ntlicpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
28310927152 40 20454601 7120 3592ntlicpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
28311147152 40 20454633 7120 3592ntlicpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
28319727004 0 0254694 1504 1584gmpxxicpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
28325667152 40 20454633 7120 3592ntlicpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
28326327152 40 20454633 7120 3592ntlicpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
28330727152 40 20455009 7120 3592ntlicpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
28333142384 0 0251785 1416 1584gmpicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
28334687084 0 0255174 1504 1584gmpxxicpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
28336662384 0 0251785 1416 1584gmpicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
28343487152 40 20455009 7120 3592ntlicpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
28345247152 40 20453289 7120 3592ntlicpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
28349201797 0 0244376 1360 1584gmpgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28352947052 0 0254782 1504 1584gmpxxicpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
28357567004 0 0254694 1504 1584gmpxxicpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
28358007132 0 0254814 1504 1584gmpxxicpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
28361527132 0 0254814 1504 1584gmpxxicpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
28366142384 0 0251385 1416 1584gmpicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
28385065197 72 5430997 3296 3544ntlg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28388807152 40 20454633 7120 3592ntlicpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
28395187052 0 0254782 1504 1584gmpxxicpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
28397827084 0 0255174 1504 1584gmpxxicpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
28398045719 72 5431789 3296 3544ntlg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28399147152 40 20454593 7120 3592ntlicpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
28400247152 40 20454601 7120 3592ntlicpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
28404204249 72 5429012 3288 3544ntlg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28407067152 40 20454593 7120 3592ntlicpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
28413667004 0 0254694 1504 1584gmpxxicpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
28417186948 0 0253382 1504 1584gmpxxicpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
28419603768 32 0246574 1488 1648gmpxxg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28419607132 0 0254814 1504 1584gmpxxicpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
28423343761 32 0248118 1488 1648gmpxxg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28429507052 0 0254782 1504 1584gmpxxicpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
28429947052 0 0254782 1504 1584gmpxxicpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
28442487152 40 20454593 7120 3592ntlicpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
28464482384 0 0251385 1416 1584gmpicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
28467344042 32 0245768 1480 1616gmpxxg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28488021729 0 0247498 1368 1584gmpclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
28491761847 0 0245808 1368 1616gmpgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28495067152 40 20453241 7120 3592ntlicpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
28496601850 0 0247336 1368 1616gmpgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28498142384 0 0251385 1416 1584gmpicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
28506507004 0 0254694 1504 1584gmpxxicpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
28506942304 0 0251305 1416 1584gmpicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
28510022304 0 0251353 1416 1584gmpicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
28515522384 0 0251785 1416 1584gmpicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
28525861729 0 0247290 1368 1584gmpclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
28560402304 0 0251353 1416 1584gmpicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
28565681729 0 0247290 1368 1584gmpclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
28582402384 0 0251785 1416 1584gmpicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
28589001686 0 0244296 1360 1584gmpclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
28589442304 0 0251353 1416 1584gmpicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
28597362304 0 0251305 1416 1584gmpicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
28598462304 0 0251305 1416 1584gmpicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
28601322384 0 0251385 1416 1584gmpicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
28612543326 32 0245656 1488 1648gmpxxg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28613862304 0 0251353 1416 1584gmpicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
28615847152 40 20454601 7120 3592ntlicpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
28628162152 0 0249825 1416 1584gmpicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
28639601729 0 0247914 1368 1584gmpclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
28647746900 0 0253286 1504 1584gmpxxicpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
28680301850 0 0245552 1368 1616gmpgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
28710442304 0 0251305 1416 1584gmpicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
28991162152 0 0249881 1416 1584gmpicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
29304005719 72 5433301 3296 3544ntlg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
29368467132 0 0254814 1504 1584gmpxxicpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
31065327084 0 0255174 1504 1584gmpxxicpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
34246087084 0 0255174 1504 1584gmpxxicpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017

Test failure

Implementation: gmp
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer gmp
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer gmp
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer gmp
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer gmp
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer gmp
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer gmp
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer gmpxx
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer gmpxx
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer gmpxx
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer gmpxx
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer gmpxx
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer gmpxx
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ntl
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ntl
icpc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ntl
icpc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ntl
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ntl
icpc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ntl

Compiler output

Implementation: gmpxx
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
dec.cpp: In file included from dec.cpp:2:
dec.cpp: In file included from ./gmpxx_import.h:4:
dec.cpp: In file included from /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/include/gmpxx.h:39:
dec.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/algorithm:62:
dec.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/stl_algo.h:65:
dec.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/random:51:
dec.cpp: In file included from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h:33:
dec.cpp: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/x86intrin.h:27:
dec.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:41:10: error: use of undeclared identifier '__builtin_ia32_bsrsi'
dec.cpp: return __builtin_ia32_bsrsi (__X);
dec.cpp: ^
dec.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:112:1: error: definition of builtin function '__rdtsc'
dec.cpp: __rdtsc (void)
dec.cpp: ^
dec.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:134:10: error: use of undeclared identifier '__builtin_ia32_rolqi'
dec.cpp: return __builtin_ia32_rolqi (__X, __C);
dec.cpp: ^
dec.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:142:10: error: use of undeclared identifier '__builtin_ia32_rolhi'; did you mean '__builtin_ia32_korhi'?
dec.cpp: return __builtin_ia32_rolhi (__X, __C);
dec.cpp: ^
dec.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:41:10: note: '__builtin_ia32_korhi' declared here
dec.cpp: return __builtin_ia32_bsrsi (__X);
dec.cpp: ^
dec.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:159:10: error: use of undeclared identifier '__builtin_ia32_rorqi'; did you mean '__builtin_ia32_korhi'?
dec.cpp: return __builtin_ia32_rorqi (__X, __C);
dec.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gmpxx
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gmpxx
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gmpxx
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gmpxx

Compiler output

Implementation: ntl
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(ZZ.o): in function `NTL::SetSeed(NTL::RandomStream const&)':
try.cpp: ZZ.cpp:(.text+0x...): undefined reference to `operator delete(void*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: ZZ.cpp:(.text+0x...): undefined reference to `operator delete(void*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(ZZ.o): in function `NTL::SetSeed(unsigned char const*, long)':
try.cpp: ZZ.cpp:(.text+0x...): undefined reference to `operator delete(void*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: ZZ.cpp:(.text+0x...): undefined reference to `operator delete(void*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(ZZ.o): in function `NTL::PrimeSeq::start()':
try.cpp: ZZ.cpp:(.text+0x...): undefined reference to `operator delete(void*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(ZZ.o):ZZ.cpp:(.text+0x...): more undefined references to `operator delete(void*, unsigned long)' follow
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(fileio.o): in function `NTL::UniqueID[abi:cxx11]()':
try.cpp: fileio.cpp:(.text+0x...): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(fileio.o):fileio.cpp:(.text+0x...): more undefined references to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >' follow
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: /scratch_gpfs_na2700_60/bdolbeaur/SC/supercop-20191017/supercop-data/genji262/amd64/lib/libntl.a(fileio.o): in function `NTL::UniqueID[abi:cxx11]()':
try.cpp: fileio.cpp:(.text+0x...): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace(unsigned long, unsigned long, char const*, unsigned long)'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/bin/ld: fileio.cpp:(.text+0x...): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ntl
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ntl
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ntl
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ntl