Implementation notes: x86, bulldozer, crypto_stream/xsalsa20

Computer: bulldozer
Architecture: x86
CPU ID: AuthenticAMD-00600f12-178bfbff
SUPERCOP version: 20120709
Operation: crypto_stream
Primitive: xsalsa20
TimeImplementationCompilerBenchmark dateSUPERCOP version
8186refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2012053020120525
8190refgcc -funroll-loops -m32 -O -fomit-frame-pointer2012053020120525
8197refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2012053020120525
8227refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2012053020120525
8236refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2012053020120525
8992refgcc -m32 -march=i386 -O -fomit-frame-pointer2012053020120525
9026refgcc -m32 -march=pentium -O -fomit-frame-pointer2012053020120525
9049refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2012053020120525
9390refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2012053020120525
9467refgcc -m32 -march=barcelona -O -fomit-frame-pointer2012053020120525
9477refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2012053020120525
9488refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2012053020120525
9489refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2012053020120525
9504refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2012053020120525
9511refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2012053020120525
9512refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2012053020120525
9596refgcc -m32 -O -fomit-frame-pointer2012053020120525
9600refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2012053020120525
9623refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2012053020120525
9635refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2012053020120525
9738refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2012053020120525
9871refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2012053020120525
9985refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2012053020120525
9992refgcc -m32 -march=core2 -O -fomit-frame-pointer2012053020120525
10045refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2012053020120525
10060refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2012053020120525
10114refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2012053020120525
10117refgcc -m32 -march=corei7 -O -fomit-frame-pointer2012053020120525
10181refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2012053020120525
10184refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2012053020120525
10210refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2012053020120525
10228refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2012053020120525
10237refgcc -m32 -march=i486 -O -fomit-frame-pointer2012053020120525
10257refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2012053020120525
10281refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2012053020120525
10360refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2012053020120525
10404refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2012053020120525
10538refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2012053020120525
10771refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2012053020120525
10815refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2012053020120525
10870refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2012053020120525
10875refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2012053020120525
10907refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2012053020120525
10946refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2012053020120525
10984refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2012053020120525
11005refgcc -m32 -march=k8 -O -fomit-frame-pointer2012053020120525
11015refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2012053020120525
11031refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2012053020120525
11114refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2012053020120525
11127refgcc -m32 -O3 -fomit-frame-pointer2012053020120525
11185refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2012053020120525
11190refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2012053020120525
11211refgcc -m32 -march=core2 -Os -fomit-frame-pointer2012053020120525
11221refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2012053020120525
11248refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2012053020120525
11294refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2012053020120525
11296refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2012053020120525
11310refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012053020120525
11345refgcc -m32 -march=i486 -Os -fomit-frame-pointer2012053020120525
11428refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2012053020120525
11452refgcc -m32 -march=athlon -O -fomit-frame-pointer2012053020120525
11494refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2012053020120525
11501refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2012053020120525
11504refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2012053020120525
11510refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2012053020120525
11539refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2012053020120525
11543refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2012053020120525
11566refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2012053020120525
11633refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2012053020120525
11644refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2012053020120525
11666refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2012053020120525
11677refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2012053020120525
11698refgcc -m32 -march=k8 -Os -fomit-frame-pointer2012053020120525
11699refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2012053020120525
11770refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2012053020120525
11778refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2012053020120525
11782refgcc -m32 -Os -fomit-frame-pointer2012053020120525
11796refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2012053020120525
11806refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2012053020120525
11807refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2012053020120525
11808refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2012053020120525
11839refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2012053020120525
11854refgcc -m32 -march=nocona -O -fomit-frame-pointer2012053020120525
11980refgcc -m32 -march=prescott -Os -fomit-frame-pointer2012053020120525
12003refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2012053020120525
12028refgcc -m32 -march=k6 -Os -fomit-frame-pointer2012053020120525
12045refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2012053020120525
12061refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2012053020120525
12244refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2012053020120525
12270refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2012053020120525
12280refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2012053020120525
12280refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2012053020120525
12282refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2012053020120525
12285refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2012053020120525
12286refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2012053020120525
12286refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2012053020120525
12287refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2012053020120525
12291refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2012053020120525
12291refgcc -m32 -march=pentium -Os -fomit-frame-pointer2012053020120525
12292refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2012053020120525
12293refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2012053020120525
12293refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2012053020120525
12294refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2012053020120525
12294refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2012053020120525
12295refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2012053020120525
12297refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2012053020120525
12297refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2012053020120525
12299refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2012053020120525
12299refgcc -m32 -march=prescott -O -fomit-frame-pointer2012053020120525
12301refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2012053020120525
12302refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2012053020120525
12303refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2012053020120525
12303refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2012053020120525
12303refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2012053020120525
12304refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2012053020120525
12305refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2012053020120525
12305refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012053020120525
12305refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2012053020120525
12308refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2012053020120525
12308refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012053020120525
12308refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2012053020120525
12308refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2012053020120525
12309refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2012053020120525
12310refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2012053020120525
12311refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2012053020120525
12312refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2012053020120525
12312refgcc -m32 -march=k6 -O -fomit-frame-pointer2012053020120525
12313refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2012053020120525
12313refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2012053020120525
12313refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2012053020120525
12313refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2012053020120525
12313refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2012053020120525
12313refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2012053020120525
12313refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2012053020120525
12313refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2012053020120525
12314refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2012053020120525
12314refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2012053020120525
12314refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2012053020120525
12314refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2012053020120525
12315refgcc -m32 -march=athlon -Os -fomit-frame-pointer2012053020120525
12315refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2012053020120525
12315refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2012053020120525
12315refgcc -m32 -march=i386 -Os -fomit-frame-pointer2012053020120525
12316refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2012053020120525
12317refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2012053020120525
12317refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2012053020120525
12318refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2012053020120525
12319refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2012053020120525
12319refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2012053020120525
12320refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2012053020120525
12320refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2012053020120525
12321refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2012053020120525
12321refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2012053020120525
12323refgcc -m32 -O2 -fomit-frame-pointer2012053020120525
12324refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2012053020120525
12325refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2012053020120525
12325refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2012053020120525
12325refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2012053020120525
12327refgcc -m32 -march=nocona -Os -fomit-frame-pointer2012053020120525
12327refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2012053020120525
12328refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2012053020120525
12328refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2012053020120525
12331refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2012053020120525
12332refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2012053020120525
12332refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2012053020120525
12333refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2012053020120525
12334refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2012053020120525
12353refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2012053020120525
12365refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2012053020120525
12378refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2012053020120525
12463refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2012053020120525
13350refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2012053020120525