Implementation notes: amd64, haswell, crypto_sign/sflashv2

Computer: haswell
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_sign
Primitive: sflashv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
583128refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2013060920130419
583564refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2013060920130419
588684refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2013060920130419
589218refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2013060920130419
592205refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2013060920130419
609658refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2013060920130419
612501refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2013060920130419
632872refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2013060920130419
638232refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2013060920130419
640532refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2013060920130419
643408refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2013060920130419
645776refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2013060920130419
655632refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2013060920130419
656004refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2013060920130419
658328refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2013060920130419
658735refgcc -O3 -fomit-frame-pointer2013060920130419
659784refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2013060920130419
661576refgcc -funroll-loops -O2 -fomit-frame-pointer2013060920130419
661814refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2013060920130419
666112refgcc -march=k8 -O2 -fomit-frame-pointer2013060920130419
666368refgcc -funroll-loops -O3 -fomit-frame-pointer2013060920130419
678508refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2013060920130419
678668refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2013060920130419
679213refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2013060920130419
684155refgcc -march=nocona -O3 -fomit-frame-pointer2013060920130419
689404refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2013060920130419
692372refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2013060920130419
692404refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2013060920130419
692904refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2013060920130419
693460refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2013060920130419
693845refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2013060920130419
696596refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2013060920130419
697930refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2013060920130419
697993refgcc -fno-schedule-insns -Os -fomit-frame-pointer2013060920130419
701010refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2013060920130419
701838refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2013060920130419
704868refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2013060920130419
706726refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2013060920130419
708528refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2013060920130419
710804refgcc -O2 -fomit-frame-pointer2013060920130419
716384refgcc -march=barcelona -O3 -fomit-frame-pointer2013060920130419
719684refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2013060920130419
721860refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2013060920130419
723960refgcc -m64 -march=k8 -Os -fomit-frame-pointer2013060920130419
729720refgcc -m64 -O3 -fomit-frame-pointer2013060920130419
731524refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2013060920130419
732424refgcc -march=nocona -O2 -fomit-frame-pointer2013060920130419
732560refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2013060920130419
732796refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2013060920130419
735120refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2013060920130419
735800refgcc -march=barcelona -O2 -fomit-frame-pointer2013060920130419
750156refgcc -march=barcelona -Os -fomit-frame-pointer2013060920130419
750204refgcc -m64 -Os -fomit-frame-pointer2013060920130419
750664refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2013060920130419
751088refgcc -Os -fomit-frame-pointer2013060920130419
751132refgcc -m64 -march=core2 -Os -fomit-frame-pointer2013060920130419
751344refgcc -funroll-loops -m64 -O -fomit-frame-pointer2013060920130419
751378refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2013060920130419
752634refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2013060920130419
753938refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2013060920130419
754074refgcc -march=k8 -Os -fomit-frame-pointer2013060920130419
754684refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2013060920130419
755096refgcc -march=nocona -Os -fomit-frame-pointer2013060920130419
756012refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2013060920130419
757120refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2013060920130419
758044refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2013060920130419
758624refgcc -m64 -O2 -fomit-frame-pointer2013060920130419
759692refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2013060920130419
761368refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2013060920130419
763060refgcc -funroll-loops -Os -fomit-frame-pointer2013060920130419
763748refgcc -march=barcelona -O -fomit-frame-pointer2013060920130419
767832refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2013060920130419
768100refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2013060920130419
772320refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2013060920130419
775040refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2013060920130419
776612refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2013060920130419
778688refclang -O3 -mavx2013060920130419
779354refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2013060920130419
780908refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2013060920130419
781524refgcc -march=k8 -O3 -fomit-frame-pointer2013060920130419
781662refgcc -m64 -march=nocona -Os -fomit-frame-pointer2013060920130419
781800refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2013060920130419
782656refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2013060920130419
783220refclang -O32013060920130419
784362refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2013060920130419
785236refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2013060920130419
786012refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2013060920130419
806704refgcc -O -fomit-frame-pointer2013060920130419
809480refgcc -m64 -march=corei7 -O -fomit-frame-pointer2013060920130419
810268refgcc -m64 -march=nocona -O -fomit-frame-pointer2013060920130419
811002refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2013060920130419
815613refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2013060920130419
818140refgcc -funroll-loops -O -fomit-frame-pointer2013060920130419
826856refgcc -march=nocona -O -fomit-frame-pointer2013060920130419
838738refgcc -m64 -march=barcelona -O -fomit-frame-pointer2013060920130419
839360refgcc -march=k8 -O -fomit-frame-pointer2013060920130419
841058refgcc -fno-schedule-insns -O -fomit-frame-pointer2013060920130419
847252refgcc -m64 -O -fomit-frame-pointer2013060920130419
870160refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2013060920130419
872357refgcc -m64 -march=core2 -O -fomit-frame-pointer2013060920130419
873560refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2013060920130419
875920refgcc -m64 -march=k8 -O -fomit-frame-pointer2013060920130419
2136112refcc2013060920130419
2287620refgcc -funroll-loops2013060920130419
2302960refgcc2013060920130419

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: clang -O3
lib_flash.c: lib_flash.c:409:50: warning: '/*' within block comment [-Wcomment]
lib_flash.c: init_table_flash(CK->gt;M,/*CK->gt;I,*/CK->gt;M1/*,CK->gt;M2/* /*,CK->gt;M3*/);
lib_flash.c: ^
lib_flash.c: lib_flash.c:409:53: warning: '/*' within block comment [-Wcomment]
lib_flash.c: init_table_flash(CK->gt;M,/*CK->gt;I,*/CK->gt;M1/*,CK->gt;M2/* /*,CK->gt;M3*/);
lib_flash.c: ^
lib_flash.c: lib_flash.c:690:3: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /*mis gt; la puissance 2^7^22 de tmp
lib_flash.c: ^
lib_flash.c: lib_flash.c:692:3: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /*
lib_flash.c: ^
lib_flash.c: lib_flash.c:695:4: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /* inversion affine de S*/
lib_flash.c: ^
lib_flash.c: lib_flash.c:910:34: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
lib_flash.c: printf("Erreur de fichier de clgt; publique: '%s'\n",fichier);
lib_flash.c: ^~~~
lib_flash.c: lib_flash.c:1016:34: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
lib_flash.c: printf("Erreur de fichier de clgt; secrgt;te: '%s'\n",fichier);
lib_flash.c: ^~~~ ~~~~
lib_flash.c: 7 warnings generated.
table_flash.c: table_flash.c:25:8: warning: ^ has lower precedence than table_flash.c: if( x^P table_flash.c: ^~~~~~
table_flash.c: table_flash.c:25:8: note: place parentheses around the ' table_flash.c: if( x^P table_flash.c: ^
table_flash.c: ( )
table_flash.c: table_flash.c:25:8: note: place parentheses around the ^ expression to evaluate it first
table_flash.c: if( x^P table_flash.c: ^
table_flash.c: ( )
table_flash.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 ref
clang -O3 -mavx ref