aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/bolt/bench.go36
1 files changed, 8 insertions, 28 deletions
diff --git a/cmd/bolt/bench.go b/cmd/bolt/bench.go
index f894a70..2b6ff8a 100644
--- a/cmd/bolt/bench.go
+++ b/cmd/bolt/bench.go
@@ -4,37 +4,15 @@ import (
"testing"
"github.com/boltdb/bolt"
+ "github.com/boltdb/bolt/bench"
)
// Import converts an exported database dump into a new database.
-// parallelism: integer representing number of concurrent reads/writes
// readWriteMode: 'read' or 'write'
// traversalPattern: 'sequentrial' or 'random'
+// parallelism: integer representing number of concurrent reads/writes
func Bench(inputPath string, readWriteMode string, traversalPattern string, parallelism int) {
- // cursor/sequential reads
- // random reads
-
- // sequential writes
- // random writes
-
- // reading from many buckets
- // writing to many buckets
-
- // read from many paths
- // writing to many paths
-
- // bucket size/messages
- // bucket depth
-
- // concurrency
-
- // chart/graph
-
- // profile
-
- // benchmarks for getting all keys
-
// Open the database.
db, err := bolt.Open(inputPath, 0600)
if err != nil {
@@ -43,9 +21,11 @@ func Bench(inputPath string, readWriteMode string, traversalPattern string, para
}
defer db.Close()
- b := bolt.NewBenchmark(db, readWriteMode, traversalPattern, parallelism)
-
- result := testing.Benchmark(b.Run)
+ b := bench.New(db, &bench.Config{
+ ReadWriteMode: readWriteMode,
+ TraversalPattern: traversalPattern,
+ Parallelism: parallelism,
+ })
- println(result)
+ println(testing.Benchmark(b.Run))
}