Implementation notes: aarch64, hikey960, crypto_dh/claus

Computer: hikey960
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_dh
Primitive: claus
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
110056501795 16 0187172 1168 1592gmpg++_-fno-schedule-insns_-O_-fomit-frame-pointer2019113020190816
130119751894 16 0188739 1168 1624gmpg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019113020190816
130702501869 16 0187138 1168 1592gmpg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019113020190816
130952251879 16 0186352 1152 1592gmpg++_-Os_-fomit-frame-pointer2019113020190816
131035502576 0 0188320 1112 1608gmpclang++_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019113020190816
131035502975 16 0192183 1152 1592gmpg++2019113020190816
131092871967 16 0190552 1168 1592gmpg++_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019113020190816
131118751879 16 0186352 1152 1592gmpg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019113020190816
131368501869 16 0187066 1168 1592gmpg++_-fno-schedule-insns_-O2_-fomit-frame-pointer2019113020190816
131618251795 16 0187172 1168 1592gmpg++_-O_-fomit-frame-pointer2019113020190816
131701505956 336 2392854 2760 3136ntlg++2019113020190816
131758951879 16 0186392 1152 1592gmpg++_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019113020190816
131868003410 336 2386344 2736 3136ntlg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019113020190816
131951253458 336 2386448 2736 3136ntlg++_-fno-schedule-insns_-O_-fomit-frame-pointer2019113020190816
183196301869 16 0187138 1168 1592gmpg++_-O2_-fomit-frame-pointer2019113020190816
183196304314 16 2386075 2936 3136ntlclang++_-O3_-fomit-frame-pointer_-Qunused-arguments2019113020190816
183463173410 336 2386344 2736 3136ntlg++_-O2_-fomit-frame-pointer2019113020190816
184164752576 0 0188304 1112 1608gmpclang++_-O3_-fomit-frame-pointer_-Qunused-arguments2019113020190816
184398611795 16 0187172 1168 1592gmpg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019113020190816
184866332610 336 2385576 2744 3136ntlg++_-fno-schedule-insns_-Os_-fomit-frame-pointer2019113020190816
185450982610 336 2385576 2744 3136ntlg++_-Os_-fomit-frame-pointer2019113020190816
225607503521 336 2389539 2736 3136ntlg++_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019113020190816
225668403402 336 2389528 2736 3168ntlg++_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019113020190816
243678854314 16 2386107 2936 3136ntlclang++_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019113020190816
255244501894 16 0188723 1168 1624gmpg++_-fno-schedule-insns_-O3_-fomit-frame-pointer2019113020190816
256826251879 16 0186352 1152 1592gmpg++_-fno-schedule-insns_-Os_-fomit-frame-pointer2019113020190816
257658751894 16 0188755 1168 1624gmpg++_-O3_-fomit-frame-pointer2019113020190816
257908503358 336 2386232 2736 3136ntlg++_-fno-schedule-insns_-O2_-fomit-frame-pointer2019113020190816
258241503454 336 2387960 2736 3168ntlg++_-O3_-fomit-frame-pointer2019113020190816
258907502610 336 2385616 2744 3136ntlg++_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019113020190816
259188383458 336 2386448 2736 3136ntlg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019113020190816
260156253630 336 2389828 2736 3136ntlg++_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019113020190816
260187503402 336 2387888 2736 3168ntlg++_-fno-schedule-insns_-O3_-fomit-frame-pointer2019113020190816
260728692610 336 2385576 2744 3136ntlg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019113020190816
261104692740 16 1681424006 144657 16056cryptoppg++_-O_-fomit-frame-pointer2019113020190816
263268121894 16 0190363 1168 1624gmpg++_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019113020190816
263443294314 16 2386107 2936 3136ntlclang++_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019113020190816
266555293458 336 2386448 2736 3136ntlg++_-O_-fomit-frame-pointer2019113020190816
271728003454 336 2387960 2736 3168ntlg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019113020190816
275604014314 16 2386107 2936 3136ntlclang++_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019113020190816
359676682576 0 0188320 1112 1608gmpclang++_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019113020190816
360027472576 0 0188320 1112 1608gmpclang++_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019113020190816
360729052041 16 0190390 1168 1592gmpg++_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019113020190816
381347402740 16 1681419926 144657 16056cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019113020190816
432407142808 0 1681089315 144977 16072cryptoppclang++_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019113020190816
432757934328 16 1681424102 144657 16056cryptoppg++_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019113020190816
436458203092 16 1681423302 144657 16056cryptoppg++_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019113020190816
437427901940 16 1681418522 144641 16056cryptoppg++_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019113020190816
459428682532 16 1681421318 144657 16088cryptoppg++_-O3_-fomit-frame-pointer2019113020190816
472201011940 16 1681426674 144641 16056cryptoppg++_-fno-schedule-insns_-Os_-fomit-frame-pointer2019113020190816
526782101940 16 1681426674 144641 16056cryptoppg++_-Os_-fomit-frame-pointer2019113020190816
527271604328 16 1681424222 144657 16088cryptoppg++_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019113020190816
527823402532 16 1681419718 144657 16056cryptoppg++_-O2_-fomit-frame-pointer2019113020190816
541231632808 0 1681089315 144977 16072cryptoppclang++_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019113020190816
554944502808 0 1681089299 144977 16072cryptoppclang++_-O3_-fomit-frame-pointer_-Qunused-arguments2019113020190816
569180252808 0 1681089315 144977 16072cryptoppclang++_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019113020190816
585747002548 16 1681419734 144657 16056cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019113020190816
759577282548 16 1681421318 144657 16088cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019113020190816
772446902740 16 1681424006 144657 16056cryptoppg++_-fno-schedule-insns_-O_-fomit-frame-pointer2019113020190816
796059442560 16 1681419678 144657 16056cryptoppg++_-fno-schedule-insns_-O2_-fomit-frame-pointer2019113020190816
797696462560 16 1681425398 144657 16088cryptoppg++_-fno-schedule-insns_-O3_-fomit-frame-pointer2019113020190816
798047251940 16 1681426674 144641 16056cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019113020190816
927104105050 160 1681425278 144641 16056cryptoppg++2019113020190816

Compiler output

Implementation: openssl
Security model: unknown
Compiler: cc
keypair.c: keypair.c: In function 'crypto_dh_claus_openssl_keypair':
keypair.c: keypair.c:25:5: error: dereferencing pointer to incomplete type 'DH {aka struct dh_st}'
keypair.c: dh->p = BN_new(); if (!dh->p) goto error;
keypair.c: ^~

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc openssl
gcc openssl
gcc -O2 -fomit-frame-pointer openssl
gcc -O3 -fomit-frame-pointer openssl
gcc -O -fomit-frame-pointer openssl
gcc -Os -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O2 -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O3 -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O -fomit-frame-pointer openssl
gcc -fno-schedule-insns -Os -fomit-frame-pointer openssl
gcc -funroll-loops openssl
gcc -funroll-loops -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -O -fomit-frame-pointer openssl
gcc -funroll-loops -Os -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer openssl
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv openssl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv openssl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv openssl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv openssl

Compiler output

Implementation: openssl
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
keypair.c: keypair.c:25:5: error: incomplete definition of type 'struct dh_st'
keypair.c: dh->p = BN_new(); if (!dh->p) goto error;
keypair.c: ~~^
keypair.c: /usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of 'struct dh_st'
keypair.c: typedef struct dh_st DH;
keypair.c: ^
keypair.c: keypair.c:25:28: error: incomplete definition of type 'struct dh_st'
keypair.c: dh->p = BN_new(); if (!dh->p) goto error;
keypair.c: ~~^
keypair.c: /usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of 'struct dh_st'
keypair.c: typedef struct dh_st DH;
keypair.c: ^
keypair.c: keypair.c:26:5: error: incomplete definition of type 'struct dh_st'
keypair.c: dh->g = BN_new(); if (!dh->g) goto error;
keypair.c: ~~^
keypair.c: /usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of 'struct dh_st'
keypair.c: typedef struct dh_st DH;
keypair.c: ^
keypair.c: keypair.c:26:28: error: incomplete definition of type 'struct dh_st'
keypair.c: dh->g = BN_new(); if (!dh->g) goto error;
keypair.c: ~~^
keypair.c: /usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of 'struct dh_st'
keypair.c: typedef struct dh_st DH;
keypair.c: ^
keypair.c: keypair.c:28:39: error: incomplete definition of type 'struct dh_st'
keypair.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments openssl