lib/db: Don't use global fileset in benchmarks (#5902)
This commit is contained in:
parent
fd847d4efe
commit
710f5c199f
@ -16,13 +16,13 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
var files, oneFile, firstHalf, secondHalf []protocol.FileInfo
|
var files, oneFile, firstHalf, secondHalf []protocol.FileInfo
|
||||||
var benchS *db.FileSet
|
|
||||||
|
|
||||||
func lazyInitBenchFileSet() {
|
func lazyInitBenchFiles() {
|
||||||
if benchS != nil {
|
if files != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
files = make([]protocol.FileInfo, 0, 1000)
|
||||||
for i := 0; i < 1000; i++ {
|
for i := 0; i < 1000; i++ {
|
||||||
files = append(files, protocol.FileInfo{
|
files = append(files, protocol.FileInfo{
|
||||||
Name: fmt.Sprintf("file%d", i),
|
Name: fmt.Sprintf("file%d", i),
|
||||||
@ -35,11 +35,17 @@ func lazyInitBenchFileSet() {
|
|||||||
firstHalf = files[:middle]
|
firstHalf = files[:middle]
|
||||||
secondHalf = files[middle:]
|
secondHalf = files[middle:]
|
||||||
oneFile = firstHalf[middle-1 : middle]
|
oneFile = firstHalf[middle-1 : middle]
|
||||||
|
}
|
||||||
|
|
||||||
|
func getBenchFileSet() (*db.Lowlevel, *db.FileSet) {
|
||||||
|
lazyInitBenchFiles()
|
||||||
|
|
||||||
ldb := db.OpenMemory()
|
ldb := db.OpenMemory()
|
||||||
benchS = db.NewFileSet("test)", fs.NewFilesystem(fs.FilesystemTypeBasic, "."), ldb)
|
benchS := db.NewFileSet("test)", fs.NewFilesystem(fs.FilesystemTypeBasic, "."), ldb)
|
||||||
replace(benchS, remoteDevice0, files)
|
replace(benchS, remoteDevice0, files)
|
||||||
replace(benchS, protocol.LocalDeviceID, firstHalf)
|
replace(benchS, protocol.LocalDeviceID, firstHalf)
|
||||||
|
|
||||||
|
return ldb, benchS
|
||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkReplaceAll(b *testing.B) {
|
func BenchmarkReplaceAll(b *testing.B) {
|
||||||
@ -56,7 +62,8 @@ func BenchmarkReplaceAll(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkUpdateOneChanged(b *testing.B) {
|
func BenchmarkUpdateOneChanged(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
changed := make([]protocol.FileInfo, 1)
|
changed := make([]protocol.FileInfo, 1)
|
||||||
changed[0] = oneFile[0]
|
changed[0] = oneFile[0]
|
||||||
@ -75,7 +82,8 @@ func BenchmarkUpdateOneChanged(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkUpdate100Changed(b *testing.B) {
|
func BenchmarkUpdate100Changed(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
unchanged := files[100:200]
|
unchanged := files[100:200]
|
||||||
changed := append([]protocol.FileInfo{}, unchanged...)
|
changed := append([]protocol.FileInfo{}, unchanged...)
|
||||||
@ -96,7 +104,8 @@ func BenchmarkUpdate100Changed(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkUpdate100ChangedRemote(b *testing.B) {
|
func BenchmarkUpdate100ChangedRemote(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
unchanged := files[100:200]
|
unchanged := files[100:200]
|
||||||
changed := append([]protocol.FileInfo{}, unchanged...)
|
changed := append([]protocol.FileInfo{}, unchanged...)
|
||||||
@ -117,7 +126,8 @@ func BenchmarkUpdate100ChangedRemote(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkUpdateOneUnchanged(b *testing.B) {
|
func BenchmarkUpdateOneUnchanged(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
@ -128,7 +138,8 @@ func BenchmarkUpdateOneUnchanged(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkNeedHalf(b *testing.B) {
|
func BenchmarkNeedHalf(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
@ -146,8 +157,6 @@ func BenchmarkNeedHalf(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkNeedHalfRemote(b *testing.B) {
|
func BenchmarkNeedHalfRemote(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
|
||||||
|
|
||||||
ldb := db.OpenMemory()
|
ldb := db.OpenMemory()
|
||||||
defer ldb.Close()
|
defer ldb.Close()
|
||||||
fset := db.NewFileSet("test)", fs.NewFilesystem(fs.FilesystemTypeBasic, "."), ldb)
|
fset := db.NewFileSet("test)", fs.NewFilesystem(fs.FilesystemTypeBasic, "."), ldb)
|
||||||
@ -170,7 +179,8 @@ func BenchmarkNeedHalfRemote(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkHave(b *testing.B) {
|
func BenchmarkHave(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
@ -188,7 +198,8 @@ func BenchmarkHave(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkGlobal(b *testing.B) {
|
func BenchmarkGlobal(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
@ -206,7 +217,8 @@ func BenchmarkGlobal(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkNeedHalfTruncated(b *testing.B) {
|
func BenchmarkNeedHalfTruncated(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
@ -224,7 +236,8 @@ func BenchmarkNeedHalfTruncated(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkHaveTruncated(b *testing.B) {
|
func BenchmarkHaveTruncated(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
@ -242,7 +255,8 @@ func BenchmarkHaveTruncated(b *testing.B) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func BenchmarkGlobalTruncated(b *testing.B) {
|
func BenchmarkGlobalTruncated(b *testing.B) {
|
||||||
lazyInitBenchFileSet()
|
ldb, benchS := getBenchFileSet()
|
||||||
|
defer ldb.Close()
|
||||||
|
|
||||||
b.ResetTimer()
|
b.ResetTimer()
|
||||||
for i := 0; i < b.N; i++ {
|
for i := 0; i < b.N; i++ {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user