Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
403100416 | avx2 | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180903 | 20180818 |
403907936 | avx2 | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
406804256 | avx2 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20180903 | 20180818 |
406950016 | avx2 | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
410330528 | avx2 | clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
410988384 | avx2 | clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
413082560 | avx2 | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
439301408 | ref | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
440161440 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20180903 | 20180818 |
441371744 | ref | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
441427904 | ref | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180903 | 20180818 |
446756992 | ref | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
505743712 | ref | clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180903 | 20180818 |
506819040 | ref | clang -O3 -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
506911424 | ref | clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180903 | 20180818 |
507608800 | ref | clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180903 | 20180818 |
507858784 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
511631104 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
512220704 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
513330912 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
518597536 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
518864768 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
519997376 | ref | gcc -m64 -march=corei7 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
520142976 | ref | gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer | 20180903 | 20180818 |
520333376 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
520352544 | ref | gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer | 20180903 | 20180818 |
520421632 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
521215072 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
522849600 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20180903 | 20180818 |
522864896 | ref | clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
523087104 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20180903 | 20180818 |
523142080 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
523147488 | ref | clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
523516832 | ref | clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
523958560 | ref | clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20180903 | 20180818 |
525064160 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
525815392 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
529428224 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20180903 | 20180818 |
529664992 | ref | gcc -O3 -fomit-frame-pointer | 20180903 | 20180818 |
530453760 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20180903 | 20180818 |
530862912 | avx2 | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
530877152 | avx2 | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
533435744 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
534056992 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
536970656 | avx2 | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
539064032 | avx2 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20180903 | 20180818 |
544670336 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
550475840 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20180903 | 20180818 |
554714624 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
555681248 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20180903 | 20180818 |
555890656 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
556543872 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20180903 | 20180818 |
556592480 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
557431648 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
558011776 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
559823360 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
561022784 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
578894016 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20180903 | 20180818 |
579012640 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20180903 | 20180818 |
579284320 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20180903 | 20180818 |
579928160 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20180903 | 20180818 |
580147936 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20180903 | 20180818 |
581382336 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20180903 | 20180818 |
581442688 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20180903 | 20180818 |
583492960 | ref | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
583533376 | avx2 | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20180903 | 20180818 |
583611200 | avx2 | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
584370528 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20180903 | 20180818 |
584785280 | avx2 | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20180903 | 20180818 |
585226208 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20180903 | 20180818 |
588160768 | avx2 | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20180903 | 20180818 |
591379648 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20180903 | 20180818 |
592468288 | ref | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
592915296 | avx2 | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20180903 | 20180818 |
616097024 | ref | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20180903 | 20180818 |
616245184 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20180903 | 20180818 |
618932352 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20180903 | 20180818 |
638530048 | ref | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
661315360 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
662216192 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
662373088 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20180903 | 20180818 |
662811488 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
663138784 | ref | gcc -O2 -fomit-frame-pointer | 20180903 | 20180818 |
665987936 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
666221792 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
667007776 | ref | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20180903 | 20180818 |
667753504 | ref | gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
668611488 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
668772384 | ref | gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer | 20180903 | 20180818 |
669061728 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
669484768 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20180903 | 20180818 |
669659936 | ref | gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer | 20180903 | 20180818 |
679519168 | ref | gcc -m64 -march=corei7 -O -fomit-frame-pointer | 20180903 | 20180818 |
679860768 | ref | gcc -m64 -march=core-avx-i -O -fomit-frame-pointer | 20180903 | 20180818 |
680176576 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20180903 | 20180818 |
681099968 | ref | gcc -m64 -march=corei7-avx -O -fomit-frame-pointer | 20180903 | 20180818 |
682180864 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20180903 | 20180818 |
684042848 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20180903 | 20180818 |
696752512 | ref | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20180903 | 20180818 |
701900544 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
702031680 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20180903 | 20180818 |
702109792 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20180903 | 20180818 |
705622752 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20180903 | 20180818 |
711115744 | ref | gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer | 20180903 | 20180818 |
711393600 | ref | gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer | 20180903 | 20180818 |
716268288 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20180903 | 20180818 |
716297920 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20180903 | 20180818 |
716412224 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20180903 | 20180818 |
716640000 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20180903 | 20180818 |
717718880 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20180903 | 20180818 |
717725408 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20180903 | 20180818 |
718227584 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20180903 | 20180818 |
718335584 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20180903 | 20180818 |
719939328 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20180903 | 20180818 |
720174624 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20180903 | 20180818 |
722932256 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20180903 | 20180818 |
733458720 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20180903 | 20180818 |
758481696 | ref | gcc -O -fomit-frame-pointer | 20180903 | 20180818 |
760193056 | ref | gcc -m64 -O -fomit-frame-pointer | 20180903 | 20180818 |
762803744 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20180903 | 20180818 |
763031168 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20180903 | 20180818 |
763369056 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20180903 | 20180818 |
763519744 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20180903 | 20180818 |
763606912 | ref | gcc -Os -fomit-frame-pointer | 20180903 | 20180818 |
764565280 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20180903 | 20180818 |
764688224 | ref | gcc -m64 -Os -fomit-frame-pointer | 20180903 | 20180818 |
764954848 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20180903 | 20180818 |
765063712 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20180903 | 20180818 |
765374976 | ref | gcc -m64 -march=corei7 -Os -fomit-frame-pointer | 20180903 | 20180818 |
765488064 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20180903 | 20180818 |
765548032 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20180903 | 20180818 |
765582496 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20180903 | 20180818 |
766085920 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20180903 | 20180818 |
778800672 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20180903 | 20180818 |
2303259616 | ref | gcc | 20180903 | 20180818 |
2318546720 | ref | gcc -funroll-loops | 20180903 | 20180818 |
2379157440 | ref | cc | 20180903 | 20180818 |
Compiler | Implementations
|
cc | avx2 |
gcc | avx2 |
gcc -O2 -fomit-frame-pointer | avx2 |
gcc -O3 -fomit-frame-pointer | avx2 |
gcc -O -fomit-frame-pointer | avx2 |
gcc -Os -fomit-frame-pointer | avx2 |
gcc -fno-schedule-insns -O2 -fomit-frame-pointer | avx2 |
gcc -fno-schedule-insns -O3 -fomit-frame-pointer | avx2 |
gcc -fno-schedule-insns -O -fomit-frame-pointer | avx2 |
gcc -fno-schedule-insns -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops | avx2 |
gcc -funroll-loops -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | avx2 |
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | avx2 |
gcc -m64 -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -O -fomit-frame-pointer | avx2 |
gcc -m64 -Os -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -O -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -Os -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | avx2 |
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | avx2 |
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -march=corei7 -O -fomit-frame-pointer | avx2 |
gcc -m64 -march=corei7 -Os -fomit-frame-pointer | avx2 |
gcc -m64 -march=k8 -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -march=k8 -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -march=k8 -O -fomit-frame-pointer | avx2 |
gcc -m64 -march=k8 -Os -fomit-frame-pointer | avx2 |
gcc -m64 -march=nocona -O2 -fomit-frame-pointer | avx2 |
gcc -m64 -march=nocona -O3 -fomit-frame-pointer | avx2 |
gcc -m64 -march=nocona -O -fomit-frame-pointer | avx2 |
gcc -m64 -march=nocona -Os -fomit-frame-pointer | avx2 |
gcc -march=barcelona -O2 -fomit-frame-pointer | avx2 |
gcc -march=barcelona -O3 -fomit-frame-pointer | avx2 |
gcc -march=barcelona -O -fomit-frame-pointer | avx2 |
gcc -march=barcelona -Os -fomit-frame-pointer | avx2 |
gcc -march=k8 -O2 -fomit-frame-pointer | avx2 |
gcc -march=k8 -O3 -fomit-frame-pointer | avx2 |
gcc -march=k8 -O -fomit-frame-pointer | avx2 |
gcc -march=k8 -Os -fomit-frame-pointer | avx2 |
gcc -march=nocona -O2 -fomit-frame-pointer | avx2 |
gcc -march=nocona -O3 -fomit-frame-pointer | avx2 |
gcc -march=nocona -O -fomit-frame-pointer | avx2 |
gcc -march=nocona -Os -fomit-frame-pointer | avx2
|