Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save it2350/889a86206d3978087c68c166a2dae9f8 to your computer and use it in GitHub Desktop.
Save it2350/889a86206d3978087c68c166a2dae9f8 to your computer and use it in GitHub Desktop.
CPUs crypto performance using openssl-master [2017\09\01]
Taken best timing, sorted on performance.
[chacha]
Performance in cycles per byte out of large buffer.
Skylake-X 0.57 x86_64 16xAVX-512
Knights L 0.80 x86_64 16xAVX-512
Skylake-X 1.19 x86_64 8xAVX2
Haswell 1.23 x86_64 8xAVX2
Apple A7 1.70 armv8 6xNEON+2xIALU
Ryzen 2.09 x86_64 8xAVX2
Bulldozer 2.20 x86_64 4xSSSE3
Ivy Bridge 2.41 x86_64 4xSSSE3
Denver 2.63 armv8 3xNEON+1xIALU
Sandy Bridge 2.72 x86_64 4xSSSE3
Skylake 2.75 x86 4xSSSE3
Haswell 2.83 x86 4xSSSE3
Westmere 3.00 x86_64 4xSSSE3
Sandy Bridge 3.20 x86 4xSSSE3
Mongoose 3.25 armv8 6xNEON+2xIALU
Goldmont 3.28 x86_64 4xSSSE3
Westmere 3.35 x86 4xSSSE3
C64x+ 3.54 x32
Bulldozer 3.55 x86 4xSSSE3
POWER8 3.96 ppc 3xAltiVec+1xIALU
POWER7 4.27 ppc 3xAltiVec+1xIALU
Core2 4.35 x86_64 4xSSSE3
Goldmont 4.36 x86 4xSSSE3
Cortex-A57 4.43 armv8 6xNEON+2xIALU
PPC970/G5 4.60 ppc 3xAltiVec+1xIALU
PPC74x0/G4e 4.66 ppc 3xAltiVec+1xIALU
Cortex-A53 4.72 armv8 3xNEON+1xIALU
Core2 4.83 x86 4xSSSE3
Snapdragon S4 4.90 armv4 3xNEON+1xIALU
Cortex-A15 5.00 armv4 3xNEON+1xIALU
VIA Nano 6.05 x86_64 4xSSSE3
Cortex-A8 6.35 armv4 3xNEON+1xIALU
Cortex-A9 6.50 armv4 3xNEON+1xIALU
Silvermont 7.03 x86_64 4xSSSE3
Sledgehammer 7.28 x86_64 IALU
Silvermont 8.35 x86 4xSSSE3
X-Gene 8.82 armv8 3xNEON+1xIALU
P4 9.48 x86_64 IALU
Sledgehammer 10.2 x86 IALU
Freescale e300 13.6 ppc IALU
Cortex-A5 14.1 armv4 3xNEON+1xIALU
PIII 14.2 x86 IALU
Pentium 17.5 x86 IALU
P4 18.6 x86 IALU
[SHA3 (keccak1600)]
Numbers are cycles per processed byte out of large message, for r=1088, which corresponds to SHA3-256.
Skylake-X 5.7 AVX-512
Apple A7 7.2 armv8
Knights Landing 7.6 AVX-512
Denver 7.8 armv8
Skylake 7.8 avx2
Haswell 8.7 avx2
Ryzen 8.8 x86_64
Skylake 9.4 x86_64
Haswell 9.6 x86_64
ppc (PISA 2.07) 9.8
Mongoose 10 armv8
POWER7 10.3 ppc64
c64x+ 10.9 x32
POWER8 11.5 ppc64
Cortex-A57 12 armv8
Core 2 12.9 x86_64
Sandy Bridge 12.9 x86_64
Cortex-A53 13 armv8
Sledgehammer 13.3 x86_64
Westmere 13.7 x86_64
s390x 14
X-Gene 14 armv8
PPC970/G5 14.6 ppc64
Goldmont 15.8 x86_64
Bulldozer 16.5 x86_64
Ryzen 17 avx2
VIA Nano 17.3 x86_64
Cortex-A15 18 armv4
Sandy Bridge 18 x86 mmx
Core 2 19 x86 mmx
Silvermont 22.8 x86_64
Sledgehammer 24 x86 mmx
Snapdragon S4 24 armv4
P4 25.8 x86_64
Cortex-A9 26 armv4
Pentium M 27 x86 mmx
Cortex-A8 30 armv4
PIII 30 x86 mmx
Silvermont 30 x86 mmx
Atom 33 x86 mmx
Cortex-A7 34 armv4
Cortex-A5 36 armv4
P4 40 x86 mmx
VIA Nano 43 x86 mmx
ARM11xx 82 armv4
[poly1305]
Poly1305 hash. Numbers are cycles per processed byte with poly1305_blocks alone.
Skylake-X 0.35 x86_64 AVX-512
Skylake-X 0.51 x86 AVX2
Skylake 0.62 x86 AVX2
Haswell 0.65 x86_64 AVX2
Apple A7 0.72 armv8
Haswell 0.72 x86 AVX2
Bulldozer 0.97 x86_64 AVX
Ryzen 1.08 x86_64 AVX
Knights L 1.10 x86_64 AVX2
Sandy Bridge 1.10 x86_64 AVX
Mongoose 1.12 armv8
Cortex-A57 1.14 armv8
Denver 1.18 armv8
Cortex-A15 1.25 armv4
Bulldozer 1.31 x86 SSE2
Sandy Bridge 1.36 x86 SSE2
Sledgehammer 1.38 x86_64 IALU
Westmere 1.43 x86 SSE2
Cortex-A53 1.47 armv8
Snapdragon S4 1.48 armv4
Goldmont 1.70 x86_64 IALU
SPARC T4 1.70 sparcv9 IALU
Core 2 1.80 x86 SSE2
c64x+ 1.82 x32
VIA Nano 1.82 x86_64 IALU
Westmere 1.88 x86_64 IALU
POWER7 1.93 ppc(m64)
POWER8 2.03 ppc(m64)
Goldmont 2.10 x86 SSE2
X-Gene 2.27 armv8
z196+ 2.30 s390x
Cortex-A8 2.36 armv4
Core 2 2.41 x86_64 IALU
VIA Nano 2.47 x86 SSE2
Cortex-A9 2.55 armv4
Silvermont 2.83 x86_64 IALU
Cortex-A5 3.00 armv4
P4 3.24 x86 SSE2
PPC970 3.51 ppc(m64)
Sledgehammer 3.51 x86 IALU
SPARC64 X 3.64 sparcv9 FMA
Octeon II 3.80 mips
P4 4.46 x86_64 IALU
Silvermont 4.80 x86 SSE2
R1x000 5.64 mips
PIII 6.21 x86 IALU
z10 6.60 s390x
PPC74x0 6.92 ppc(FPU)
ARM11xx(ARMv6) 7.78 armv4
SPARC T3 7.92 sparcv9 IALU
Freescale e300 9.78 ppc(FPU)
UltraSPARC III 12.3 sparcv9 IALU
Pentium 15.7 x86 IALU
[sha1]
Numbers are CPU clock cycles spent to process single byte.
Ryzen 1.93 [hardware]
Mongoose 2.05 [hardware]
Denver 2.13 [hardware]
Cortex-A53 2.24 [hardware]
Apple A7 2.31 [hardware]
Cortex-A57 2.35 [hardware]
Skylake 3.54 x86_64 AVX2
Haswell 3.57 x86_64 AVX2
SPARC T4 3.72 [hardware]
Ryzen 3.80 x86_64 SSSE3
Denver 3.97 armv8
Haswell 4.10 x86 AVX
Skylake 4.10 x86 SSSE3
Apple A7 4.13 armv8
Ivy Bridge 4.60 x86_64 AVX
Ivy Bridge 4.70 x86 AVX
Sandy Bridge 4.99 x86_64 AVX
Sandy Bridge 5.10 x86 AVX
Westmere 5.30 x86_64 SSSE3
Westmere 5.50 x86 SSSE3
Cortex-A15 5.60 armv4
Bulldozer 5.95 x86_64 SSSE3
Bulldozer 6.00 x86 SSSE3
Core2 6.00 x86 SSSE3
Core2 6.05 x86_64 SSSE3
Opteron 6.26 x86_64
Snapdragon S4 6.40 armv4
Goldmont 6.42 x86_64 SSSE3
C64x+ 6.50 x32
Mongoose 6.50 armv8
UltraSPARC-IIi 6.60 sparcv9a
Cortex A8 6.70 armv4
Goldmont 6.70 x86 SSSE3
AMD K8 7.10 x86
VIA Nano 7.15 x86_64 SSSE3
VIA Nano 7.50 x86 SSSE3
Cortex-A57 7.88 armv8
Cortex-A53 8.03 armv8
Knights L 8.30 x86_64 AVX2
UltraSPARC-III 8.30 sparcv9a
21264 8.70 alpha
X-Gene 8.80 armv8
P4 9.05 x86_64
Atom 9.17 x86_64 SSSE3
Atom 9.30 x86 SSSE3
Silvermont 9.37 x86_64 SSSE3
Silvermont 9.90 x86 SSSE3
P4 10.6 x86
PIII 11.5 x86
SPARC T4 11.5 sparcv9
Pentium 15.7 x86
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment