Skip to content

Instantly share code, notes, and snippets.

@meteficha
Created April 11, 2015 15:30
Show Gist options
  • Save meteficha/a2bea768ef3255f8ab70 to your computer and use it in GitHub Desktop.
Save meteficha/a2bea768ef3255f8ab70 to your computer and use it in GitHub Desktop.
Benchmarking current clientsession-0.9.1.1 against a different AES-GCM implementation. Note that my CPU does not have AES-NI instructions.
benchmarking encrypt then decrypt/Message length = 0 bytes
time 18.50 μs (18.42 μs .. 18.60 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 18.58 μs (18.46 μs .. 18.70 μs)
std dev 410.9 ns (331.7 ns .. 546.4 ns)
variance introduced by outliers: 21% (moderately inflated)
benchmarking encrypt then decrypt/Message length = 50 bytes
time 31.45 μs (31.24 μs .. 31.64 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 31.52 μs (31.38 μs .. 31.69 μs)
std dev 554.1 ns (408.8 ns .. 790.2 ns)
variance introduced by outliers: 14% (moderately inflated)
benchmarking encrypt then decrypt/Message length = 100 bytes
time 41.44 μs (41.31 μs .. 41.59 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 41.33 μs (41.17 μs .. 41.48 μs)
std dev 514.5 ns (379.6 ns .. 716.5 ns)
benchmarking encrypt then decrypt/Message length = 400 bytes
time 100.0 μs (99.84 μs .. 100.3 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 100.0 μs (99.83 μs .. 100.2 μs)
std dev 692.3 ns (561.4 ns .. 847.9 ns)
benchmarking encrypt then decrypt/Message length = 2000 bytes
time 426.2 μs (425.2 μs .. 427.4 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 426.2 μs (425.6 μs .. 427.0 μs)
std dev 2.284 μs (1.816 μs .. 2.919 μs)
benchmarking encrypt then decrypt/Message length = 80000 bytes
time 16.42 ms (16.34 ms .. 16.52 ms)
1.000 R² (1.000 R² .. 1.000 R²)
mean 16.33 ms (16.28 ms .. 16.38 ms)
std dev 123.0 μs (92.94 μs .. 181.0 μs)
benchmarking encrypt then decrypt/Message length = 0 bytes
time 2.427 μs (2.420 μs .. 2.434 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 2.427 μs (2.423 μs .. 2.431 μs)
std dev 14.91 ns (12.42 ns .. 18.64 ns)
benchmarking encrypt then decrypt/Message length = 50 bytes
time 13.59 μs (13.54 μs .. 13.63 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 13.58 μs (13.56 μs .. 13.62 μs)
std dev 103.4 ns (80.94 ns .. 136.2 ns)
benchmarking encrypt then decrypt/Message length = 100 bytes
time 20.78 μs (20.72 μs .. 20.87 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 20.85 μs (20.79 μs .. 20.92 μs)
std dev 208.6 ns (157.8 ns .. 328.3 ns)
benchmarking encrypt then decrypt/Message length = 400 bytes
time 66.71 μs (66.52 μs .. 66.93 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 66.66 μs (66.46 μs .. 66.87 μs)
std dev 691.6 ns (558.1 ns .. 903.5 ns)
benchmarking encrypt then decrypt/Message length = 2000 bytes
time 319.8 μs (319.0 μs .. 320.4 μs)
1.000 R² (1.000 R² .. 1.000 R²)
mean 320.0 μs (319.1 μs .. 321.1 μs)
std dev 3.132 μs (2.569 μs .. 4.303 μs)
benchmarking encrypt then decrypt/Message length = 80000 bytes
time 12.81 ms (12.76 ms .. 12.85 ms)
1.000 R² (1.000 R² .. 1.000 R²)
mean 12.80 ms (12.77 ms .. 12.83 ms)
std dev 79.93 μs (56.22 μs .. 116.7 μs)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment