Implementation notes: x86, bolero, crypto_dh/kummer

Computer: bolero
Architecture: x86
CPU ID: GenuineIntel-000406f1-bfebfbff
SUPERCOP version: 20190110
Operation: crypto_dh
Primitive: kummer
TimeImplementationCompilerBenchmark dateSUPERCOP version
1985928refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017090520170725
1986280refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017090520170725
1986372refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017090520170725
1986392refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017090520170725
1986548refgcc -m32 -O2 -fomit-frame-pointer2017090520170725
1986600refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017090520170725
1986656refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017090520170725
1986656refgcc -m32 -march=athlon -O -fomit-frame-pointer2017090520170725
1986684refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017090520170725
1986688refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017090520170725
1986760refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017090520170725
1986764refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2017090520170725
1986784refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017090520170725
1986804refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017090520170725
1986812refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017090520170725
1986852refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017090520170725
1986892refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017090520170725
1986896refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017090520170725
1986936refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017090520170725
1986940refgcc -m32 -Os -fomit-frame-pointer2017090520170725
1987148refgcc -m32 -march=core2 -O -fomit-frame-pointer2017090520170725
1987152refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017090520170725
1987176refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017090520170725
1987180refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017090520170725
1987184refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017090520170725
1987200refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017090520170725
1987224refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017090520170725
1987228refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017090520170725
1987288refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017090520170725
1987296refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017090520170725
1987304refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017090520170725
1987320refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017090520170725
1987324refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017090520170725
1987328refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017090520170725
1987328refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017090520170725
1987368refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017090520170725
1987384refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017090520170725
1987432refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017090520170725
1987448refgcc -m32 -march=core-avx2 -Os -fomit-frame-pointer2017090520170725
1987524refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017090520170725
1987532refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017090520170725
1987560refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017090520170725
1987568refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017090520170725
1987576refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017090520170725
1987580refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017090520170725
1987644refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017090520170725
1987660refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017090520170725
1987672refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017090520170725
1987692refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017090520170725
1987700refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017090520170725
1987760refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017090520170725
1987788refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017090520170725
1987800refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017090520170725
1987800refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017090520170725
1987804refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017090520170725
1987824refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017090520170725
1987828refgcc -m32 -march=i486 -O -fomit-frame-pointer2017090520170725
1987852refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017090520170725
1987856refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017090520170725
1987868refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017090520170725
1987888refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017090520170725
1987888refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017090520170725
1987896refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017090520170725
1987896refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017090520170725
1987896refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017090520170725
1987928refgcc -m32 -march=k6 -O -fomit-frame-pointer2017090520170725
1987932refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017090520170725
1987996refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017090520170725
1988008refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017090520170725
1988036refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017090520170725
1988052refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017090520170725
1988052refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017090520170725
1988060refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017090520170725
1988064refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017090520170725
1988092refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017090520170725
1988124refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017090520170725
1988128refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017090520170725
1988136refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017090520170725
1988136refgcc -m32 -march=nocona -O -fomit-frame-pointer2017090520170725
1988148refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017090520170725
1988156refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017090520170725
1988184refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017090520170725
1988228refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017090520170725
1988332refgcc -m32 -march=i386 -O -fomit-frame-pointer2017090520170725
1988344refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017090520170725
1988348refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017090520170725
1988376refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017090520170725
1988396refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017090520170725
1988400refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017090520170725
1988436refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017090520170725
1988460refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017090520170725
1988476refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017090520170725
1988488refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017090520170725
1988492refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017090520170725
1988512refgcc -m32 -O3 -fomit-frame-pointer2017090520170725
1988572refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017090520170725
1988600refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017090520170725
1988604refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017090520170725
1988732refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017090520170725
1988736refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017090520170725
1988768refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017090520170725
1988768refgcc -m32 -march=pentium -O -fomit-frame-pointer2017090520170725
1988804refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017090520170725
1988912refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017090520170725
1988980refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017090520170725
1988988refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017090520170725
1989016refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017090520170725
1989036refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017090520170725
1989052refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017090520170725
1989056refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017090520170725
1989056refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017090520170725
1989096refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017090520170725
1989104refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017090520170725
1989116refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017090520170725
1989176refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017090520170725
1989184refgcc -m32 -march=k8 -O -fomit-frame-pointer2017090520170725
1989256refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017090520170725
1989280refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017090520170725
1989324refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017090520170725
1989400refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2017090520170725
1989420refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017090520170725
1989456refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017090520170725
1989456refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017090520170725
1989468refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017090520170725
1989500refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017090520170725
1989500refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2017090520170725
1989512refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017090520170725
1989572refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017090520170725
1989584refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017090520170725
1989588refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017090520170725
1989632refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017090520170725
1989844refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017090520170725
1989876refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017090520170725
1989916refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017090520170725
1990024refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017090520170725
1990044refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017090520170725
1990080refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017090520170725
1990132refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017090520170725
1990200refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017090520170725
1990268refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017090520170725
1990272refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017090520170725
1990356refgcc -m32 -O -fomit-frame-pointer2017090520170725
1990428refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017090520170725
1990440refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017090520170725
1990500refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017090520170725
1990508refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017090520170725
1990536refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017090520170725
1990536refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017090520170725
1990624refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017090520170725
1990664refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017090520170725
1990696refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017090520170725
1990700refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017090520170725
1990776refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017090520170725
1990936refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017090520170725
1991000refgcc -m32 -march=prescott -O -fomit-frame-pointer2017090520170725
1991220refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017090520170725
1991220refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017090520170725
1991448refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017090520170725
1991452refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017090520170725
1991652refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017090520170725
1991656refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017090520170725
1991872refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017090520170725
1991996refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017090520170725
1992324refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017090520170725
1992332refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017090520170725
1992556refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017090520170725
1992584refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017090520170725
1992996refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017090520170725
1993112refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017090520170725
1993368refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017090520170725
1993924refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017090520170725
1994008refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017090520170725
1999872refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017090520170725
2005084refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017090520170725
2008840refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017090520170725
2025308refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017090520170725