[Verificaton YAKKETY] # i386 - Significant performance increase using the yakkety-proposed/i386 package inside a 32-bit LXD container build using a Ryzen CPU with Intel SHA Extension capability. - Same performance (as expected) using the yakkety-proposed/i386 package on a non SHA Extension Intel CPU (i7-6770HQ) with yakkety-proposed package. # amd64 - Significant performance increase using the yakkety-proposed/amd64 package on Ryzen CPU with Intel SHA Extension capability. - Same performance (as expected) using the yakkety-proposed/amd64 package on a non SHA Extension Intel CPU (i7-6770HQ) with yakkety-proposed package. Note : I unfortunately don't (nor colleagues) have access to a Intel CPU with SHA Extension capability at our disposal. Ideally, if someone has access to one to test it would be good. Otherwise, I think it is safe to rely on upstream author of the patch who confirmed it was working as expected using a Intel CPU with SHA extension capability. Reference : https://github.com/openssl/openssl/issues/2848 "...Myself I tested on Intel processors, yes, with/without...." == * Test yakkety-proposed/i386 on a 32-bit LXD container using a non SHA Extension Intel CPU (Version before -proposed pkg): -- ii libssl1.0.0:i386 1.0.2g-1ubuntu9.1 i386 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.1 i386 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 12441833 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 8997589 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 5074636 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 1904828 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 304739 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,32) rc4(8x,mmx) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-OIx07U/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOUR CE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 66356.44k 191948.57k 433035.61k 650181.29k 832140.63k # time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m15.429s user 0m14.372s sys 0m1.052s == * Test yakkety-proposed/i386 on a 32-bit LXD container using a non SHA Extension Intel CPU (With -proposed pkg): -- ii libssl1.0.0:i386 1.0.2g-1ubuntu9.2 i386 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.2 i386 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 12414183 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 8947717 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 5057099 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 1905356 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 304628 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,32) rc4(8x,mmx) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-h4cyBe/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOUR CE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 66208.98k 190884.63k 431539.11k 650361.51k 831837.53k # time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m15.047s user 0m14.352s sys 0m0.692s == * Test yakkety-proposed/i386 on a 32-bit LXD container using a Ryzen CPU (Version before -proposed pkg): -- ii libssl1.0.0:i386 1.0.2g-1ubuntu9.1 i386 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.1 i386 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 12179205 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 9286258 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 5721265 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 2272855 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 343371 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,32) rc4(8x,mmx) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-OIx07U/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOUR CE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 64955.76k 198106.84k 488214.61k 775801.17k 937631.74k # time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m15.167s user 0m14.560s sys 0m0.600s == * Test yakkety-proposed/i386 on a 32-bit LXD container using a Ryzen CPU (With -proposed pkg): -- ii libssl1.0.0:i386 1.0.2g-1ubuntu9.2 i386 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.2 i386 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 15283062 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 13102409 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 9183632 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 4163208 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 682639 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,32) rc4(8x,mmx) des(ptr,risc1,16,long) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-h4cyBe/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOUR CE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 81509.66k 279518.06k 783669.93k 1421041.66k 1864059.56k #time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m3.560s user 0m3.048s sys 0m0.508s == * Test yakkety-proposed/amd64 on Intel CPU (64-bit) with Non Intel SHA Extension (Version before -proposed pkg): -- ii libssl1.0.0:amd64 1.0.2g-1ubuntu9.1 amd64 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.1 amd64 Secure Sockets Layer toolkit - cryptographic utility #openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 16195704 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 11405919 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 6562453 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 2449558 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 357312 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,64) rc4(16x,int) des(idx,cisc,16,int) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-tWbsaJ/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY _SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -D GHASH_ASM -DECP_NISTZ256_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 86377.09k 243326.27k 559995.99k 836115.80k 975699.97k # time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m12.811s user 0m11.748s sys 0m1.060s == * Test yakkety-proposed/amd64 on Intel CPU (64-bit) with Non Intel SHA Extension (With -proposed pkg): -- ii libssl1.0.0:amd64 1.0.2g-1ubuntu9.2 amd64 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.2 amd64 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 16029840 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 11289948 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 6512044 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 2424904 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 354302 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,64) rc4(16x,int) des(idx,cisc,16,int) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-pewLMz/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY _SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -D GHASH_ASM -DECP_NISTZ256_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 85492.48k 240852.22k 555694.42k 827700.57k 967480.66k # time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m12.448s user 0m11.696s sys 0m0.748s == * Test yakkety-proposed/amd64 on a Ryzen CPU (Version before -proposed pkg): -- ii libssl1.0.0:amd64 1.0.2g-1ubuntu9.1 amd64 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.1 amd64 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 17361181 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 12246010 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 6780969 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 2449489 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 352468 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,64) rc4(8x,int) des(idx,cisc,16,int) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-tWbsaJ/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY _SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -D GHASH_ASM -DECP_NISTZ256_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 92592.97k 261248.21k 578642.69k 836092.25k 962472.62k #time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m13.330s user 0m12.400s sys 0m0.924s == * Test yakkety-proposed/amd64 on a Ryzen CPU (With -proposed pkg): -- ii libssl1.0.0:amd64 1.0.2g-1ubuntu9.2 amd64 Secure Sockets Layer toolkit - shared libraries ii openssl 1.0.2g-1ubuntu9.2 amd64 Secure Sockets Layer toolkit - cryptographic utility # openssl speed sha1 Doing sha1 for 3s on 16 size blocks: 25034315 sha1's in 3.00s Doing sha1 for 3s on 64 size blocks: 19533533 sha1's in 3.00s Doing sha1 for 3s on 256 size blocks: 11903290 sha1's in 3.00s Doing sha1 for 3s on 1024 size blocks: 4640937 sha1's in 3.00s Doing sha1 for 3s on 8192 size blocks: 694256 sha1's in 3.00s OpenSSL 1.0.2g 1 Mar 2016 built on: reproducible build, date unspecified options:bn(64,64) rc4(8x,int) des(idx,cisc,16,int) aes(partial) blowfish(idx) compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -g -O2 -fdebug-prefix-map=/build/openssl-pewLMz/openssl-1.0.2g=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY _SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -D GHASH_ASM -DECP_NISTZ256_ASM The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes sha1 133516.35k 416715.37k 1015747.41k 1584106.50k 1895781.72k # time openssl dgst -sha256 /var/tmp/5Gfile SHA256(/var/tmp/5Gfile)= 7f06c62352aebd8125b2a1841e2b9e1ffcbed602f381c3dcb3200200e383d1d5 real 0m3.484s user 0m2.952s sys 0m0.528s ==