Skip to content

Instantly share code, notes, and snippets.

@hnakamur
Last active November 21, 2020 14:53
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 hnakamur/8a90475c7e0a6693bdaa4b665095bab0 to your computer and use it in GitHub Desktop.
Save hnakamur/8a90475c7e0a6693bdaa4b665095bab0 to your computer and use it in GitHub Desktop.
openssl speed -evp aes-128-ctr | aes-128-gcm | chacha20-poly1305 のApple M1 Mac miniでの結果
% sysctl -n hw.model
Macmini9,1
% /usr/libexec/PlistBuddy -c 'print :"CPU Names"' ~/Library/Preferences/com.apple.SystemProfiler.plist | awk -F ' = ' '{prevlast=last; last=$2} END{print prevlast}' 
Mac mini (M1, 2020)
% sysctl -n machdep.cpu.brand_string
Apple processor
% file /opt/local/bin/openssl
/opt/local/bin/openssl: Mach-O 64-bit executable arm64
% openssl speed -evp aes-128-ctr
Doing aes-128-ctr for 3s on 16 size blocks: 215422972 aes-128-ctr's in 3.00s
Doing aes-128-ctr for 3s on 64 size blocks: 168508545 aes-128-ctr's in 2.99s
Doing aes-128-ctr for 3s on 256 size blocks: 90331269 aes-128-ctr's in 3.00s
Doing aes-128-ctr for 3s on 1024 size blocks: 29673637 aes-128-ctr's in 3.00s
Doing aes-128-ctr for 3s on 8192 size blocks: 4068674 aes-128-ctr's in 3.00s
Doing aes-128-ctr for 3s on 16384 size blocks: 2045598 aes-128-ctr's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Fri Nov 20 05:03:35 2020 UTC
options:bn(64,64) rc4(int) des(int) aes(partial) idea(int) blowfish(ptr) 
compiler: /usr/bin/clang -fPIC -arch arm64 -pipe -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DVPAES_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -D_REENTRANT -DZLIB -DNDEBUG -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-ctr    1148922.52k  3606871.87k  7708268.29k 10128601.43k 11110192.47k 11171692.54k
% openssl speed -evp aes-128-gcm
Doing aes-128-gcm for 3s on 16 size blocks: 210810937 aes-128-gcm's in 3.00s
Doing aes-128-gcm for 3s on 64 size blocks: 145116120 aes-128-gcm's in 3.00s
Doing aes-128-gcm for 3s on 256 size blocks: 56281524 aes-128-gcm's in 3.00s
Doing aes-128-gcm for 3s on 1024 size blocks: 13613512 aes-128-gcm's in 3.00s
Doing aes-128-gcm for 3s on 8192 size blocks: 1666622 aes-128-gcm's in 3.00s
Doing aes-128-gcm for 3s on 16384 size blocks: 845563 aes-128-gcm's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Fri Nov 20 05:03:35 2020 UTC
options:bn(64,64) rc4(int) des(int) aes(partial) idea(int) blowfish(ptr) 
compiler: /usr/bin/clang -fPIC -arch arm64 -pipe -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DVPAES_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -D_REENTRANT -DZLIB -DNDEBUG -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-gcm    1124325.00k  3095810.56k  4802690.05k  4646745.43k  4550989.14k  4617901.40k
% openssl speed -evp chacha20-poly1305 
Doing chacha20-poly1305 for 3s on 16 size blocks: 72267681 chacha20-poly1305's in 3.00s
Doing chacha20-poly1305 for 3s on 64 size blocks: 27421600 chacha20-poly1305's in 3.00s
Doing chacha20-poly1305 for 3s on 256 size blocks: 12742100 chacha20-poly1305's in 3.00s
Doing chacha20-poly1305 for 3s on 1024 size blocks: 5131086 chacha20-poly1305's in 3.00s
Doing chacha20-poly1305 for 3s on 8192 size blocks: 639309 chacha20-poly1305's in 2.99s
Doing chacha20-poly1305 for 3s on 16384 size blocks: 319979 chacha20-poly1305's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Fri Nov 20 05:03:35 2020 UTC
options:bn(64,64) rc4(int) des(int) aes(partial) idea(int) blowfish(ptr) 
compiler: /usr/bin/clang -fPIC -arch arm64 -pipe -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DVPAES_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -D_REENTRANT -DZLIB -DNDEBUG -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.0.sdk
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
chacha20-poly1305   385427.63k   584994.13k  1087325.87k  1751410.69k  1751578.37k  1747511.98k
% port info openssl
openssl @1.1.1h (devel, security)
Variants:             rfc3779, universal

Description:          The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure
                      Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a full-strength general purpose cryptography library.
Homepage:             https://www.openssl.org

Library Dependencies: zlib
Conflicts with:       libressl, libressl-devel
Platforms:            darwin
License:              OpenSSL and SSLeay
Maintainers:          Email: larryv@macports.org, GitHub: larryv
                      Email: cal@macports.org, GitHub: neverpanic
                      Policy: openmaintainer
% which openssl
/opt/local/bin/openssl
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment