Time | Implementation | Compiler | Benchmark date | SUPERCOP version |
337120960 | avx2 | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
341524678 | avx2 | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
341693506 | avx2 | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20180820 | 20180818 |
371517806 | ref | gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer | 20180820 | 20180818 |
371749752 | ref | gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
376176306 | ref | gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
416330398 | ref | gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
416918766 | ref | gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer | 20180820 | 20180818 |
417546866 | ref | gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer | 20180820 | 20180818 |
417939566 | ref | gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
418289674 | ref | gcc -m64 -march=corei7 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
421987280 | ref | gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
422838878 | avx2 | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20180820 | 20180818 |
423167756 | avx2 | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
424989158 | ref | gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
425010520 | ref | gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
426088036 | ref | gcc -m64 -march=core2 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
427077530 | ref | gcc -funroll-loops -O3 -fomit-frame-pointer | 20180820 | 20180818 |
431143724 | ref | gcc -march=barcelona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
431539108 | ref | gcc -m64 -march=barcelona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
431901712 | ref | gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | 20180820 | 20180818 |
432213914 | ref | gcc -march=k8 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
432442582 | ref | gcc -m64 -march=k8 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
432598694 | ref | gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | 20180820 | 20180818 |
432728318 | ref | gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
433594392 | ref | gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
433923776 | ref | gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
434647598 | ref | gcc -O3 -fomit-frame-pointer | 20180820 | 20180818 |
435555538 | ref | gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
436356382 | ref | gcc -m64 -O3 -fomit-frame-pointer | 20180820 | 20180818 |
436833958 | ref | gcc -funroll-loops -O2 -fomit-frame-pointer | 20180820 | 20180818 |
438219078 | ref | gcc -march=nocona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
438661102 | ref | gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
440517198 | ref | gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
440933702 | ref | gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
441580568 | avx2 | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
444158132 | avx2 | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20180820 | 20180818 |
444368606 | ref | gcc -m64 -march=nocona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
444407458 | ref | gcc -fno-schedule-insns -O3 -fomit-frame-pointer | 20180820 | 20180818 |
445935006 | ref | gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | 20180820 | 20180818 |
447741778 | ref | gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
448964538 | avx2 | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20180820 | 20180818 |
449171404 | ref | gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | 20180820 | 20180818 |
449904576 | ref | gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
450063702 | ref | gcc -funroll-loops -O -fomit-frame-pointer | 20180820 | 20180818 |
450248612 | ref | gcc -funroll-loops -m64 -O -fomit-frame-pointer | 20180820 | 20180818 |
451977790 | ref | gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | 20180820 | 20180818 |
452561494 | ref | gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
455587198 | ref | gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | 20180820 | 20180818 |
460249460 | ref | gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | 20180820 | 20180818 |
463237280 | ref | gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | 20180820 | 20180818 |
465493160 | avx2 | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
465519824 | avx2 | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20180820 | 20180818 |
466045184 | ref | gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | 20180820 | 20180818 |
469372266 | avx2 | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
472335424 | ref | gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | 20180820 | 20180818 |
496971618 | ref | gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer | 20180820 | 20180818 |
497830630 | avx2 | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20180820 | 20180818 |
508553782 | ref | gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
518880846 | ref | gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
523001138 | ref | gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer | 20180820 | 20180818 |
524543426 | ref | gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer | 20180820 | 20180818 |
544065104 | ref | gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
552540472 | ref | gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | 20180820 | 20180818 |
554817604 | ref | gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer | 20180820 | 20180818 |
555665110 | ref | gcc -funroll-loops -m64 -Os -fomit-frame-pointer | 20180820 | 20180818 |
556123040 | ref | gcc -m64 -march=core-avx2 -O -fomit-frame-pointer | 20180820 | 20180818 |
559778736 | ref | gcc -m64 -march=core2 -Os -fomit-frame-pointer | 20180820 | 20180818 |
560229010 | ref | gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer | 20180820 | 20180818 |
561377058 | ref | gcc -funroll-loops -Os -fomit-frame-pointer | 20180820 | 20180818 |
561597652 | ref | gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer | 20180820 | 20180818 |
562708410 | ref | gcc -march=k8 -Os -fomit-frame-pointer | 20180820 | 20180818 |
564053732 | ref | gcc -m64 -march=k8 -Os -fomit-frame-pointer | 20180820 | 20180818 |
565235308 | ref | gcc -fno-schedule-insns -O -fomit-frame-pointer | 20180820 | 20180818 |
565736820 | ref | gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv | 20180820 | 20180818 |
566180472 | ref | gcc -Os -fomit-frame-pointer | 20180820 | 20180818 |
566506688 | ref | gcc -m64 -O -fomit-frame-pointer | 20180820 | 20180818 |
566691422 | ref | gcc -O -fomit-frame-pointer | 20180820 | 20180818 |
567080030 | ref | gcc -m64 -march=corei7 -Os -fomit-frame-pointer | 20180820 | 20180818 |
569043266 | ref | gcc -march=k8 -O -fomit-frame-pointer | 20180820 | 20180818 |
569078136 | ref | gcc -m64 -march=barcelona -Os -fomit-frame-pointer | 20180820 | 20180818 |
570496212 | ref | gcc -m64 -march=k8 -O -fomit-frame-pointer | 20180820 | 20180818 |
570845440 | ref | gcc -m64 -march=barcelona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
572530156 | ref | gcc -fno-schedule-insns -Os -fomit-frame-pointer | 20180820 | 20180818 |
574180068 | ref | gcc -march=barcelona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
574322408 | ref | gcc -fno-schedule-insns -O2 -fomit-frame-pointer | 20180820 | 20180818 |
574324278 | ref | gcc -m64 -Os -fomit-frame-pointer | 20180820 | 20180818 |
574715658 | ref | gcc -march=barcelona -O -fomit-frame-pointer | 20180820 | 20180818 |
574864664 | ref | gcc -march=barcelona -Os -fomit-frame-pointer | 20180820 | 20180818 |
576149904 | ref | gcc -m64 -march=barcelona -O -fomit-frame-pointer | 20180820 | 20180818 |
578114504 | ref | gcc -m64 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
578399668 | ref | gcc -O2 -fomit-frame-pointer | 20180820 | 20180818 |
581345974 | ref | gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | 20180820 | 20180818 |
582285308 | ref | gcc -march=nocona -Os -fomit-frame-pointer | 20180820 | 20180818 |
582501876 | ref | gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer | 20180820 | 20180818 |
582931206 | ref | gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
583373472 | ref | gcc -m64 -march=nocona -Os -fomit-frame-pointer | 20180820 | 20180818 |
584896290 | ref | gcc -m64 -march=core2 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
584922404 | ref | gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer | 20180820 | 20180818 |
585667434 | ref | gcc -m64 -march=corei7 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
585701600 | ref | gcc -march=k8 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
585789094 | ref | gcc -m64 -march=k8 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
586441020 | ref | gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | 20180820 | 20180818 |
589742582 | ref | gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer | 20180820 | 20180818 |
590760566 | ref | gcc -m64 -march=corei7 -O -fomit-frame-pointer | 20180820 | 20180818 |
593267796 | ref | gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | 20180820 | 20180818 |
596912668 | ref | gcc -march=nocona -O -fomit-frame-pointer | 20180820 | 20180818 |
597100746 | ref | gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer | 20180820 | 20180818 |
597127476 | ref | gcc -m64 -march=corei7-avx -O -fomit-frame-pointer | 20180820 | 20180818 |
597524972 | ref | gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | 20180820 | 20180818 |
597667488 | ref | gcc -m64 -march=nocona -O -fomit-frame-pointer | 20180820 | 20180818 |
598391640 | ref | gcc -m64 -march=core-avx-i -O -fomit-frame-pointer | 20180820 | 20180818 |
598775694 | ref | gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer | 20180820 | 20180818 |
598792832 | ref | gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer | 20180820 | 20180818 |
599469948 | ref | gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | 20180820 | 20180818 |
599796406 | ref | gcc -m64 -march=core2 -O -fomit-frame-pointer | 20180820 | 20180818 |
600971734 | ref | gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer | 20180820 | 20180818 |
607062346 | ref | gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | 20180820 | 20180818 |
619255604 | ref | gcc -m64 -march=nocona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
622055192 | ref | gcc -march=nocona -O2 -fomit-frame-pointer | 20180820 | 20180818 |
2097649752 | ref | gcc | 20180820 | 20180818 |
2097892236 | ref | cc | 20180820 | 20180818 |
2099767736 | ref | gcc -funroll-loops | 20180820 | 20180818 |
Compiler | Implementations
|
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
|