mirror of
https://github.com/restic/restic.git
synced 2024-09-08 12:29:39 +02:00
In Go 1.17.1, maphash has become quite a bit faster than siphash, so we can drop one third-party dependency. maphash is just an interface to the standard Go map's hash function, which we already trust for other use cases. Benchmark results on linux/amd64, -benchtime=3s: name old time/op new time/op delta IndexHasUnknown-8 50.6ns ±10% 41.0ns ±19% -18.92% (p=0.000 n=9+10) IndexHasKnown-8 52.6ns ±12% 41.5ns ±12% -21.13% (p=0.000 n=9+10) IndexMapHash-8 3.64µs ± 1% 2.00µs ± 0% -45.09% (p=0.000 n=10+9) IndexAlloc-8 700ms ± 1% 601ms ± 6% -14.18% (p=0.000 n=8+10) IndexAllocParallel-8 205ms ± 5% 192ms ± 8% -6.18% (p=0.043 n=10+10) MasterIndexAlloc-8 319ms ± 1% 279ms ± 5% -12.58% (p=0.000 n=10+10) MasterIndexLookupSingleIndex-8 156ns ± 8% 147ns ± 6% -5.46% (p=0.023 n=10+10) MasterIndexLookupMultipleIndex-8 150ns ± 7% 142ns ± 8% -5.69% (p=0.007 n=10+10) MasterIndexLookupSingleIndexUnknown-8 74.4ns ± 6% 72.0ns ± 9% ~ (p=0.175 n=10+9) MasterIndexLookupMultipleIndexUnknown-8 67.4ns ± 9% 65.5ns ± 7% ~ (p=0.340 n=9+9) MasterIndexLookupParallel/known,indices=25-8 461ns ± 2% 445ns ± 2% -3.49% (p=0.000 n=10+10) MasterIndexLookupParallel/unknown,indices=25-8 408ns ±11% 378ns ± 5% -7.22% (p=0.035 n=10+9) MasterIndexLookupParallel/known,indices=50-8 479ns ± 1% 437ns ± 4% -8.82% (p=0.000 n=10+10) MasterIndexLookupParallel/unknown,indices=50-8 406ns ± 8% 343ns ±15% -15.44% (p=0.001 n=10+10) MasterIndexLookupParallel/known,indices=100-8 480ns ± 1% 455ns ± 5% -5.15% (p=0.000 n=8+10) MasterIndexLookupParallel/unknown,indices=100-8 391ns ±18% 382ns ± 8% ~ (p=0.315 n=10+10) MasterIndexLookupBlobSize-8 71.0ns ± 8% 57.2ns ±11% -19.36% (p=0.000 n=9+10) PackerManager-8 254ms ± 1% 254ms ± 1% ~ (p=0.285 n=15+15) name old speed new speed delta IndexMapHash-8 1.12GB/s ± 1% 2.05GB/s ± 0% +82.13% (p=0.000 n=10+9) PackerManager-8 208MB/s ± 1% 207MB/s ± 1% ~ (p=0.281 n=15+15) name old alloc/op new alloc/op delta IndexMapHash-8 0.00B 0.00B ~ (all equal) IndexAlloc-8 400MB ± 0% 400MB ± 0% ~ (p=1.000 n=9+10) IndexAllocParallel-8 401MB ± 0% 401MB ± 0% +0.00% (p=0.000 n=10+10) MasterIndexAlloc-8 258MB ± 0% 262MB ± 0% +1.42% (p=0.000 n=9+10) PackerManager-8 73.1kB ± 0% 73.1kB ± 0% ~ (p=0.382 n=13+13) name old allocs/op new allocs/op delta IndexMapHash-8 0.00 0.00 ~ (all equal) IndexAlloc-8 907k ± 0% 907k ± 0% -0.00% (p=0.000 n=10+10) IndexAllocParallel-8 907k ± 0% 907k ± 0% +0.00% (p=0.009 n=10+10) MasterIndexAlloc-8 327k ± 0% 317k ± 0% -3.06% (p=0.000 n=10+10) PackerManager-8 744 ± 0% 744 ± 0% ~ (all equal)
40 lines
1.4 KiB
Modula-2
40 lines
1.4 KiB
Modula-2
module github.com/restic/restic
|
|
|
|
require (
|
|
bazil.org/fuse v0.0.0-20200407214033-5883e5a4b512
|
|
cloud.google.com/go/storage v1.16.0
|
|
github.com/Azure/azure-sdk-for-go v55.6.0+incompatible
|
|
github.com/Azure/go-autorest/autorest v0.11.19 // indirect
|
|
github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
|
|
github.com/cenkalti/backoff/v4 v4.1.1
|
|
github.com/cespare/xxhash/v2 v2.1.1
|
|
github.com/dnaeon/go-vcr v1.2.0 // indirect
|
|
github.com/elithrar/simple-scrypt v1.3.0
|
|
github.com/go-ole/go-ole v1.2.5
|
|
github.com/gofrs/uuid v4.0.0+incompatible // indirect
|
|
github.com/google/go-cmp v0.5.6
|
|
github.com/hashicorp/golang-lru v0.5.4
|
|
github.com/juju/ratelimit v1.0.1
|
|
github.com/kurin/blazer v0.5.3
|
|
github.com/minio/minio-go/v7 v7.0.12
|
|
github.com/minio/sha256-simd v1.0.0
|
|
github.com/ncw/swift v1.0.53
|
|
github.com/pkg/errors v0.9.1
|
|
github.com/pkg/profile v1.6.0
|
|
github.com/pkg/sftp v1.13.2
|
|
github.com/pkg/xattr v0.4.3
|
|
github.com/restic/chunker v0.4.0
|
|
github.com/spf13/cobra v1.2.1
|
|
github.com/spf13/pflag v1.0.5
|
|
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e
|
|
golang.org/x/net v0.0.0-20210614182718-04defd469f4e
|
|
golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914
|
|
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
|
|
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c
|
|
golang.org/x/text v0.3.6
|
|
google.golang.org/api v0.50.0
|
|
gopkg.in/tomb.v2 v2.0.0-20161208151619-d5d1b5820637
|
|
)
|
|
|
|
go 1.13
|