Implementation notes: amd64, berlekamp, crypto_dh/curve25519

Computer: berlekamp
Architecture: amd64
CPU ID: GenuineIntel-00010677-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_dh
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
1260236refgcc -march=nocona -O3 -fomit-frame-pointer2012052820120525
1264843refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2012052820120525
1265302refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2012052820120525
1265939refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2012052820120525
1266449refgcc -m64 -O2 -fomit-frame-pointer2012052820120525
1266483refgcc -O -fomit-frame-pointer2012052820120525
1266763refgcc -m64 -O -fomit-frame-pointer2012052820120525
1267129refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2012052820120525
1267290refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2012052820120525
1267367refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2012052820120525
1267588refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2012052820120525
1267903refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1268090refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1268192refgcc -m64 -O3 -fomit-frame-pointer2012052820120525
1268217refgcc -march=nocona -Os -fomit-frame-pointer2012052820120525
1268276refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2012052820120525
1268531refgcc -funroll-loops -Os -fomit-frame-pointer2012052820120525
1269025refgcc -m64 -march=core2 -Os -fomit-frame-pointer2012052820120525
1269092refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2012052820120525
1269203refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012052820120525
1269220refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2012052820120525
1269288refgcc -m64 -march=k8 -O -fomit-frame-pointer2012052820120525
1269424refgcc -fno-schedule-insns -O -fomit-frame-pointer2012052820120525
1269466refgcc -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1269594refgcc -funroll-loops -O3 -fomit-frame-pointer2012052820120525
1269594refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1269679refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2012052820120525
1269790refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012052820120525
1270011refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1270036refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2012052820120525
1270189refgcc -march=k8 -Os -fomit-frame-pointer2012052820120525
1270401refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2012052820120525
1270402refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2012052820120525
1270418refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012052820120525
1270452refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012052820120525
1270461refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012052820120525
1270461refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2012052820120525
1270580refgcc -m64 -march=nocona -Os -fomit-frame-pointer2012052820120525
1270708refgcc -funroll-loops -m64 -O -fomit-frame-pointer2012052820120525
1270758refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2012052820120525
1270776refgcc -Os -fomit-frame-pointer2012052820120525
1270784refgcc -funroll-loops -O -fomit-frame-pointer2012052820120525
1270920refgcc -m64 -march=k8 -Os -fomit-frame-pointer2012052820120525
1270988refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2012052820120525
1271124refgcc -march=barcelona -O -fomit-frame-pointer2012052820120525
1271302refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2012052820120525
1271387refgcc -march=k8 -O -fomit-frame-pointer2012052820120525
1271439refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2012052820120525
1271795refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2012052820120525
1271983refgcc -march=k8 -O2 -fomit-frame-pointer2012052820120525
1272042refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1272323refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2012052820120525
1272501refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012052820120525
1272603refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2012052820120525
1272696refgcc -O3 -fomit-frame-pointer2012052820120525
1273224refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2012052820120525
1273359refgcc -m64 -Os -fomit-frame-pointer2012052820120525
1273359refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2012052820120525
1273555refgcc -m64 -march=nocona -O -fomit-frame-pointer2012052820120525
1273581refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2012052820120525
1273946refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012052820120525
1274031refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012052820120525
1274252refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2012052820120525
1274380refgcc -march=barcelona -Os -fomit-frame-pointer2012052820120525
1274609refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2012052820120525
1274838refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2012052820120525
1274855refgcc -m64 -march=barcelona -O -fomit-frame-pointer2012052820120525
1274924refgcc -march=k8 -O3 -fomit-frame-pointer2012052820120525
1275077refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2012052820120525
1275162refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2012052820120525
1275298refgcc -m64 -march=core2 -O -fomit-frame-pointer2012052820120525
1275391refgcc -funroll-loops -O2 -fomit-frame-pointer2012052820120525
1275501refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2012052820120525
1275510refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2012052820120525
1275782refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2012052820120525
1275867refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1276343refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2012052820120525
1276386refgcc -march=nocona -O -fomit-frame-pointer2012052820120525
1277278refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012052820120525
1278519refgcc -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1278672refgcc -fno-schedule-insns -Os -fomit-frame-pointer2012052820120525
1279080refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2012052820120525
1280499refgcc -march=nocona -O2 -fomit-frame-pointer2012052820120525
1281035refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2012052820120525
1283185refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2012052820120525
1283245refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2012052820120525
1287529refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2012052820120525
1306849refgcc2012052820120525
1308209refgcc -O2 -fomit-frame-pointer2012052820120525
1313726refgcc -funroll-loops2012052820120525
1314006refcc2012052820120525
1548037mpfqgcc -m64 -march=core2 -O3 -fomit-frame-pointer2012052820120525
1549873mpfqgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012052820120525
1551803mpfqgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2012052820120525
1557838mpfqgcc -march=nocona -O3 -fomit-frame-pointer2012052820120525
1558568mpfqgcc -m64 -march=nocona -O3 -fomit-frame-pointer2012052820120525
1558790mpfqgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2012052820120525
1563838mpfqgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012052820120525
1565190mpfqgcc -O3 -fomit-frame-pointer2012052820120525
1572355mpfqgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2012052820120525
1575271mpfqgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2012052820120525
1578696mpfqgcc -m64 -O3 -fomit-frame-pointer2012052820120525
1580031mpfqgcc -funroll-loops -O3 -fomit-frame-pointer2012052820120525
1582896mpfqgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012052820120525
1584723mpfqgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2012052820120525
1585998mpfqgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2012052820120525
1586202mpfqgcc -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1586950mpfqgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2012052820120525
1587018mpfqgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012052820120525
1589109mpfqgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2012052820120525
1590945mpfqgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2012052820120525
1592798mpfqgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1593011mpfqgcc -m64 -march=core2 -O2 -fomit-frame-pointer2012052820120525
1595025mpfqgcc -m64 -march=k8 -O3 -fomit-frame-pointer2012052820120525
1595288mpfqgcc -O2 -fomit-frame-pointer2012052820120525
1595399mpfqgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012052820120525
1597363mpfqgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1597915mpfqgcc -m64 -march=nocona -O2 -fomit-frame-pointer2012052820120525
1598637mpfqgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1598833mpfqgcc -march=k8 -O3 -fomit-frame-pointer2012052820120525
1599079mpfqgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2012052820120525
1599181mpfqgcc -m64 -O2 -fomit-frame-pointer2012052820120525
1599938mpfqgcc -march=nocona -O2 -fomit-frame-pointer2012052820120525
1601128mpfqgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1602709mpfqgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2012052820120525
1606262mpfqgcc -march=k8 -O2 -fomit-frame-pointer2012052820120525
1606355mpfqgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2012052820120525
1607971mpfqgcc -m64 -march=k8 -O2 -fomit-frame-pointer2012052820120525
1609135mpfqgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012052820120525
1610325mpfqgcc -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1611371mpfqgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2012052820120525
1614099mpfqgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2012052820120525
1614465mpfqgcc -funroll-loops -O2 -fomit-frame-pointer2012052820120525
1618969mpfqgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2012052820120525
1624095mpfqgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2012052820120525
1713455mpfqgcc -march=nocona -Os -fomit-frame-pointer2012052820120525
1714620mpfqgcc -m64 -march=nocona -Os -fomit-frame-pointer2012052820120525
1724582mpfqgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2012052820120525
1727719mpfqgcc -march=barcelona -Os -fomit-frame-pointer2012052820120525
1727736mpfqgcc -Os -fomit-frame-pointer2012052820120525
1727965mpfqgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2012052820120525
1728492mpfqgcc -m64 -march=barcelona -Os -fomit-frame-pointer2012052820120525
1728636mpfqgcc -march=k8 -O -fomit-frame-pointer2012052820120525
1729138mpfqgcc -m64 -Os -fomit-frame-pointer2012052820120525
1730269mpfqgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2012052820120525
1730711mpfqgcc -march=k8 -Os -fomit-frame-pointer2012052820120525
1730812mpfqgcc -m64 -march=k8 -Os -fomit-frame-pointer2012052820120525
1731008mpfqgcc -m64 -march=core2 -Os -fomit-frame-pointer2012052820120525
1731127mpfqgcc -fno-schedule-insns -Os -fomit-frame-pointer2012052820120525
1731943mpfqgcc -march=barcelona -O -fomit-frame-pointer2012052820120525
1731977mpfqgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2012052820120525
1732342mpfqgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2012052820120525
1732436mpfqgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012052820120525
1732487mpfqgcc -m64 -march=k8 -O -fomit-frame-pointer2012052820120525
1732708mpfqgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012052820120525
1732751mpfqgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2012052820120525
1732870mpfqgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2012052820120525
1733014mpfqgcc -funroll-loops -m64 -Os -fomit-frame-pointer2012052820120525
1735997mpfqgcc -m64 -march=barcelona -O -fomit-frame-pointer2012052820120525
1736303mpfqgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2012052820120525
1737315mpfqgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2012052820120525
1738905mpfqgcc -funroll-loops -Os -fomit-frame-pointer2012052820120525
1742423mpfqgcc -march=nocona -O -fomit-frame-pointer2012052820120525
1742755mpfqgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2012052820120525
1743962mpfqgcc -m64 -O -fomit-frame-pointer2012052820120525
1743979mpfqgcc -m64 -march=nocona -O -fomit-frame-pointer2012052820120525
1744685mpfqgcc -O -fomit-frame-pointer2012052820120525
1745526mpfqgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2012052820120525
1746070mpfqgcc -fno-schedule-insns -O -fomit-frame-pointer2012052820120525
1750337mpfqgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2012052820120525
1750465mpfqgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2012052820120525
1750609mpfqgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2012052820120525
1753125mpfqgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2012052820120525
1753567mpfqgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2012052820120525
1759092mpfqgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2012052820120525
1759509mpfqgcc -m64 -march=core2 -O -fomit-frame-pointer2012052820120525
1759772mpfqgcc -funroll-loops -O -fomit-frame-pointer2012052820120525
1759951mpfqgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012052820120525
1767388mpfqgcc -funroll-loops -m64 -O -fomit-frame-pointer2012052820120525
3482467mpfqgcc2012052820120525
3483071mpfqcc2012052820120525
3487754mpfqgcc -funroll-loops2012052820120525