Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
267797092 | avx2 | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180918 | 20180818 |
268264412 | avx2 | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
274089156 | avx2 | clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
274592812 | avx2 | clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
284321884 | avx2 | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
286357292 | avx2 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20180918 | 20180818 |
286670804 | avx2 | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
374743744 | avx2 | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
377390720 | avx2 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20180918 | 20180818 |
383255724 | avx2 | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
419258024 | avx2 | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
443699896 | avx2 | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
451030828 | avx2 | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20180918 | 20180818 |
455955176 | avx2 | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20180918 | 20180818 |
456635900 | avx2 | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20180918 | 20180818 |
457818824 | avx2 | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20180918 | 20180818 |
457988476 | ref | clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
459440664 | ref | clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180918 | 20180818 |
469250384 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20180918 | 20180818 |
469536536 | ref | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
473132520 | ref | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
573029588 | ref | clang -O3 -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
573130760 | ref | clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180918 | 20180818 |
573148264 | ref | clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180918 | 20180818 |
573233224 | ref | clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments | 20180918 | 20180818 |
579755644 | ref | clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
579865956 | ref | clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
580392464 | ref | clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
583741852 | ref | clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments | 20180918 | 20180818 |
583916672 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
584305600 | ref | gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer | 20180918 | 20180818 |
584659896 | ref | gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer | 20180918 | 20180818 |
584814420 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20180918 | 20180818 |
587219620 | ref | gcc -m64 -march=corei7 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
587417136 | ref | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
591000648 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
592304432 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
599859928 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
599894576 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20180918 | 20180818 |
599939176 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
600354444 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
601675848 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
602225260 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20180918 | 20180818 |
603031472 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
603234176 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
603272736 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
603369820 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
603932308 | ref | gcc -O3 -fomit-frame-pointer | 20180918 | 20180818 |
603940960 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20180918 | 20180818 |
604135556 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
604768584 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20180918 | 20180818 |
604930024 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
605849076 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
606953856 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
607051912 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20180918 | 20180818 |
607965836 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20180918 | 20180818 |
608935184 | ref | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20180918 | 20180818 |
612433884 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
613136868 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
615672104 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
615672372 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20180918 | 20180818 |
615838008 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20180918 | 20180818 |
616505692 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
616519444 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
618289564 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
618474580 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
621274056 | ref | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20180918 | 20180818 |
621579908 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20180918 | 20180818 |
628346420 | ref | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
634499784 | ref | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
637138156 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20180918 | 20180818 |
637146772 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20180918 | 20180818 |
639443888 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20180918 | 20180818 |
639455716 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20180918 | 20180818 |
639481104 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20180918 | 20180818 |
640165504 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20180918 | 20180818 |
640214960 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20180918 | 20180818 |
642221672 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20180918 | 20180818 |
642221776 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20180918 | 20180818 |
646839508 | ref | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20180918 | 20180818 |
702726240 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20180918 | 20180818 |
703124860 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
703739204 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
712287416 | ref | gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
714493764 | ref | gcc -O2 -fomit-frame-pointer | 20180918 | 20180818 |
718205808 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
721824468 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
721996440 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
729726036 | ref | gcc -m64 -march=core-avx-i -O -fomit-frame-pointer | 20180918 | 20180818 |
729856412 | ref | gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer | 20180918 | 20180818 |
729900548 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20180918 | 20180818 |
730458312 | ref | gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer | 20180918 | 20180818 |
730971796 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20180918 | 20180818 |
731313000 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20180918 | 20180818 |
731336336 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
731389668 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20180918 | 20180818 |
731936048 | ref | gcc -m64 -march=corei7-avx -O -fomit-frame-pointer | 20180918 | 20180818 |
731978788 | ref | gcc -m64 -march=corei7 -O -fomit-frame-pointer | 20180918 | 20180818 |
734522900 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
742704600 | ref | gcc -m64 -march=corei7 -Os -fomit-frame-pointer | 20180918 | 20180818 |
742994180 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20180918 | 20180818 |
743049436 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20180918 | 20180818 |
743068500 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20180918 | 20180818 |
743894772 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20180918 | 20180818 |
744000740 | ref | gcc -Os -fomit-frame-pointer | 20180918 | 20180818 |
744028608 | ref | gcc -m64 -Os -fomit-frame-pointer | 20180918 | 20180818 |
744107136 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20180918 | 20180818 |
744156900 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20180918 | 20180818 |
744233640 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20180918 | 20180818 |
744329744 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20180918 | 20180818 |
745451552 | ref | gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer | 20180918 | 20180818 |
745805408 | ref | gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer | 20180918 | 20180818 |
746504452 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20180918 | 20180818 |
747776716 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20180918 | 20180818 |
751806212 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20180918 | 20180818 |
752666332 | ref | gcc -O -fomit-frame-pointer | 20180918 | 20180818 |
755411844 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20180918 | 20180818 |
755519920 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20180918 | 20180818 |
755777504 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20180918 | 20180818 |
755977240 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20180918 | 20180818 |
756083864 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20180918 | 20180818 |
756202384 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20180918 | 20180818 |
756330680 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20180918 | 20180818 |
760151992 | ref | gcc -m64 -O -fomit-frame-pointer | 20180918 | 20180818 |
760257792 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20180918 | 20180818 |
760507816 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20180918 | 20180818 |
767539328 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20180918 | 20180818 |
767640580 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20180918 | 20180818 |
768313500 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20180918 | 20180818 |
768722292 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20180918 | 20180818 |
772763692 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20180918 | 20180818 |
776777956 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
776855472 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20180918 | 20180818 |
781089336 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20180918 | 20180818 |
2152682328 | ref | gcc -funroll-loops | 20180918 | 20180818 |
2154071772 | ref | cc | 20180918 | 20180818 |
2156390348 | ref | gcc | 20180918 | 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
|