new file: go-vs-openssl.md
This commit is contained in:
parent
b00a70fc8d
commit
cbc35cbd6e
91
openssl_benchmark/go-vs-openssl.md
Normal file
91
openssl_benchmark/go-vs-openssl.md
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
Go 1.4.2
|
||||||
|
========
|
||||||
|
|
||||||
|
39MB/s @1k
|
||||||
|
|
||||||
|
go1.4/src/crypto/cipher$ go test -bench=.
|
||||||
|
|
||||||
|
BenchmarkAESGCMSeal1K 50000 25968 ns/op 39.43 MB/s
|
||||||
|
BenchmarkAESGCMOpen1K 50000 25914 ns/op 39.51 MB/s
|
||||||
|
[...]
|
||||||
|
|
||||||
|
Go 1.5
|
||||||
|
======
|
||||||
|
|
||||||
|
41MB/s @1k
|
||||||
|
|
||||||
|
go1.5/src/crypto/cipher$ ~/go/src/go1.5/bin/go test -bench=.
|
||||||
|
|
||||||
|
BenchmarkAESGCMSeal1K-2 50000 24429 ns/op 41.92 MB/s
|
||||||
|
BenchmarkAESGCMOpen1K-2 50000 24578 ns/op 41.66 MB/s
|
||||||
|
BenchmarkAESGCMSeal8K-2 10000 190340 ns/op 43.04 MB/s
|
||||||
|
BenchmarkAESGCMOpen8K-2 10000 190308 ns/op 43.05 MB/s
|
||||||
|
[...]
|
||||||
|
|
||||||
|
openssl 1.0.1k
|
||||||
|
==============
|
||||||
|
|
||||||
|
302MB/s @1k
|
||||||
|
|
||||||
|
$ openssl speed -elapsed -evp aes-128-gcm
|
||||||
|
|
||||||
|
[...]
|
||||||
|
The 'numbers' are in 1000s of bytes per second processed.
|
||||||
|
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
|
||||||
|
aes-128-gcm 71275.15k 80063.19k 275048.36k 302066.69k 308912.13k
|
||||||
|
|
||||||
|
|
||||||
|
gocryptfs with openssl bindings
|
||||||
|
===============================
|
||||||
|
|
||||||
|
148MB/s @4k
|
||||||
|
|
||||||
|
gocryptfs/openssl_benchmark$ ./openssl_benchmark.bash
|
||||||
|
|
||||||
|
BenchmarkAESGCMSeal4K 20000 98671 ns/op 41.51 MB/s
|
||||||
|
BenchmarkAESGCMOpen4K 20000 98679 ns/op 41.51 MB/s
|
||||||
|
BenchmarkOpensslGCMenc4K 50000 27542 ns/op 148.72 MB/s
|
||||||
|
BenchmarkOpensslGCMdec4K 50000 27564 ns/op 148.60 MB/s
|
||||||
|
|
||||||
|
|
||||||
|
CPU Info
|
||||||
|
========
|
||||||
|
|
||||||
|
This is tested on a dual-core Intel Sandy Bridge Pentium G630 which does NOT have
|
||||||
|
aes instructions ( https://en.wikipedia.org/wiki/AES_instruction_set )
|
||||||
|
|
||||||
|
$ cat /proc/cpuinfo | fold -s -w 80
|
||||||
|
|
||||||
|
processor : 0
|
||||||
|
vendor_id : GenuineIntel
|
||||||
|
cpu family : 6
|
||||||
|
model : 42
|
||||||
|
model name : Intel(R) Pentium(R) CPU G630 @ 2.70GHz
|
||||||
|
stepping : 7
|
||||||
|
microcode : 0x29
|
||||||
|
cpu MHz : 1617.574
|
||||||
|
cache size : 3072 KB
|
||||||
|
physical id : 0
|
||||||
|
siblings : 2
|
||||||
|
core id : 0
|
||||||
|
cpu cores : 2
|
||||||
|
apicid : 0
|
||||||
|
initial apicid : 0
|
||||||
|
fpu : yes
|
||||||
|
fpu_exception : yes
|
||||||
|
cpuid level : 13
|
||||||
|
wp : yes
|
||||||
|
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
|
||||||
|
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm
|
||||||
|
constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc
|
||||||
|
aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16
|
||||||
|
xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave lahf_lm arat epb
|
||||||
|
pln pts dtherm tpr_shadow vnmi flexpriority ept vpid xsaveopt
|
||||||
|
bugs :
|
||||||
|
bogomips : 5387.68
|
||||||
|
clflush size : 64
|
||||||
|
cache_alignment : 64
|
||||||
|
address sizes : 36 bits physical, 48 bits virtual
|
||||||
|
power management:
|
||||||
|
|
||||||
|
[...]
|
Loading…
Reference in New Issue
Block a user