Skip to content

Instantly share code, notes, and snippets.

@armon
Created November 1, 2013 00:26
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save armon/7259381 to your computer and use it in GitHub Desktop.
Save armon/7259381 to your computer and use it in GitHub Desktop.
scrypt parameter benchmarks
package main
import "code.google.com/p/go.crypto/scrypt"
import "fmt"
import "time"
func main() {
n_vals := []int{4 * 1024, 8 * 1024, 16 * 1024, 32 * 1024}
r_vals := []int{6, 7, 8, 9, 10}
p_vals := []int{1, 2, 3, 4}
for _, n := range n_vals {
for _, r := range r_vals {
for _, p := range p_vals {
run(n, r, p)
}
}
}
}
func run(n, r, p int) {
start := time.Now()
defer func() {
fmt.Printf("N: %d, r: %d, p: %d | Elapsed: %v\n", n, r, p, time.Now().Sub(start))
}()
salt := []byte("this is a super random salt")
scrypt.Key([]byte("some password"), salt, n, r, p, 32)
}
N: 4096, r: 6, p: 1 | Elapsed: 16.643941ms
N: 4096, r: 6, p: 2 | Elapsed: 29.215745ms
N: 4096, r: 6, p: 3 | Elapsed: 44.638571ms
N: 4096, r: 6, p: 4 | Elapsed: 60.747709ms
N: 4096, r: 7, p: 1 | Elapsed: 17.709218ms
N: 4096, r: 7, p: 2 | Elapsed: 33.207106ms
N: 4096, r: 7, p: 3 | Elapsed: 50.755ms
N: 4096, r: 7, p: 4 | Elapsed: 64.371764ms
N: 4096, r: 8, p: 1 | Elapsed: 18.891911ms
N: 4096, r: 8, p: 2 | Elapsed: 41.145255ms
N: 4096, r: 8, p: 3 | Elapsed: 59.269676ms
N: 4096, r: 8, p: 4 | Elapsed: 78.98684ms
N: 4096, r: 9, p: 1 | Elapsed: 23.153228ms
N: 4096, r: 9, p: 2 | Elapsed: 42.675822ms
N: 4096, r: 9, p: 3 | Elapsed: 63.443767ms
N: 4096, r: 9, p: 4 | Elapsed: 82.753809ms
N: 4096, r: 10, p: 1 | Elapsed: 22.628752ms
N: 4096, r: 10, p: 2 | Elapsed: 50.714428ms
N: 4096, r: 10, p: 3 | Elapsed: 72.3378ms
N: 4096, r: 10, p: 4 | Elapsed: 92.314859ms
N: 8192, r: 6, p: 1 | Elapsed: 28.206793ms
N: 8192, r: 6, p: 2 | Elapsed: 57.188989ms
N: 8192, r: 6, p: 3 | Elapsed: 89.786828ms
N: 8192, r: 6, p: 4 | Elapsed: 113.846476ms
N: 8192, r: 7, p: 1 | Elapsed: 32.970664ms
N: 8192, r: 7, p: 2 | Elapsed: 66.607718ms
N: 8192, r: 7, p: 3 | Elapsed: 119.91134ms
N: 8192, r: 7, p: 4 | Elapsed: 130.103831ms
N: 8192, r: 8, p: 1 | Elapsed: 37.761003ms
N: 8192, r: 8, p: 2 | Elapsed: 74.326786ms
N: 8192, r: 8, p: 3 | Elapsed: 113.828157ms
N: 8192, r: 8, p: 4 | Elapsed: 147.220766ms
N: 8192, r: 9, p: 1 | Elapsed: 40.945529ms
N: 8192, r: 9, p: 2 | Elapsed: 84.18441ms
N: 8192, r: 9, p: 3 | Elapsed: 123.313401ms
N: 8192, r: 9, p: 4 | Elapsed: 165.040248ms
N: 8192, r: 10, p: 1 | Elapsed: 46.317003ms
N: 8192, r: 10, p: 2 | Elapsed: 124.306097ms
N: 8192, r: 10, p: 3 | Elapsed: 241.345116ms
N: 8192, r: 10, p: 4 | Elapsed: 255.679297ms
N: 16384, r: 6, p: 1 | Elapsed: 58.551287ms
N: 16384, r: 6, p: 2 | Elapsed: 116.017245ms
N: 16384, r: 6, p: 3 | Elapsed: 169.203111ms
N: 16384, r: 6, p: 4 | Elapsed: 229.405551ms
N: 16384, r: 7, p: 1 | Elapsed: 74.154803ms
N: 16384, r: 7, p: 2 | Elapsed: 141.705595ms
N: 16384, r: 7, p: 3 | Elapsed: 205.870463ms
N: 16384, r: 7, p: 4 | Elapsed: 296.543654ms
N: 16384, r: 8, p: 1 | Elapsed: 88.015407ms
N: 16384, r: 8, p: 2 | Elapsed: 162.890312ms
N: 16384, r: 8, p: 3 | Elapsed: 234.929258ms
N: 16384, r: 8, p: 4 | Elapsed: 308.256704ms
N: 16384, r: 9, p: 1 | Elapsed: 87.554648ms
N: 16384, r: 9, p: 2 | Elapsed: 170.498293ms
N: 16384, r: 9, p: 3 | Elapsed: 266.27758ms
N: 16384, r: 9, p: 4 | Elapsed: 391.029472ms
N: 16384, r: 10, p: 1 | Elapsed: 111.424834ms
N: 16384, r: 10, p: 2 | Elapsed: 190.790472ms
N: 16384, r: 10, p: 3 | Elapsed: 287.049808ms
N: 16384, r: 10, p: 4 | Elapsed: 366.370369ms
N: 32768, r: 6, p: 1 | Elapsed: 115.281209ms
N: 32768, r: 6, p: 2 | Elapsed: 232.997067ms
N: 32768, r: 6, p: 3 | Elapsed: 348.409739ms
N: 32768, r: 6, p: 4 | Elapsed: 469.656889ms
N: 32768, r: 7, p: 1 | Elapsed: 134.628001ms
N: 32768, r: 7, p: 2 | Elapsed: 273.419477ms
N: 32768, r: 7, p: 3 | Elapsed: 411.306277ms
N: 32768, r: 7, p: 4 | Elapsed: 528.674322ms
N: 32768, r: 8, p: 1 | Elapsed: 154.438489ms
N: 32768, r: 8, p: 2 | Elapsed: 303.02896ms
N: 32768, r: 8, p: 3 | Elapsed: 462.060702ms
N: 32768, r: 8, p: 4 | Elapsed: 603.91742ms
N: 32768, r: 9, p: 1 | Elapsed: 167.985151ms
N: 32768, r: 9, p: 2 | Elapsed: 377.158332ms
N: 32768, r: 9, p: 3 | Elapsed: 528.472595ms
N: 32768, r: 9, p: 4 | Elapsed: 665.895225ms
N: 32768, r: 10, p: 1 | Elapsed: 191.694697ms
N: 32768, r: 10, p: 2 | Elapsed: 370.637674ms
N: 32768, r: 10, p: 3 | Elapsed: 567.704921ms
N: 32768, r: 10, p: 4 | Elapsed: 754.190494ms
@armon
Copy link
Author

armon commented Nov 1, 2013

Should be noted this is from a 2013 Macbook Air, i5 1.3 Ghz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment