storj/satellite/overlay
Egon Elbre cb781d66c7 satellite/overlay: optimize FindStorageNodes
Reduce the number of fields returned from the query.

Benchmark results in `satellite/overlay`:

benchstat before.txt after2.txt
name                               old time/op  new time/op  delta
SelectStorageNodes-32              7.85ms ± 1%  6.27ms ± 1%  -20.18%  (p=0.002 n=10+4)
SelectNewStorageNodes-32           8.21ms ± 1%  6.61ms ± 0%  -19.53%  (p=0.002 n=10+4)
SelectStorageNodesExclusion-32     17.2ms ± 1%  15.9ms ± 1%   -7.55%  (p=0.002 n=10+4)
SelectNewStorageNodesExclusion-32  17.8ms ± 2%  16.1ms ± 0%   -9.38%  (p=0.002 n=10+4)
FindStorageNodes-32                48.4ms ± 1%  45.1ms ± 0%   -6.69%  (p=0.002 n=10+4)
FindStorageNodesExclusion-32       79.2ms ± 1%  76.1ms ± 1%   -3.89%  (p=0.002 n=10+4)

Benchmark results from `satellite/overlay` after making them parallel:

benchstat before-parallel.txt after2-parallel.txt
name                               old time/op  new time/op  delta
SelectStorageNodes-32               548µs ± 1%   353µs ± 1%  -35.60%  (p=0.029 n=4+4)
SelectNewStorageNodes-32            562µs ± 0%   368µs ± 0%  -34.51%  (p=0.029 n=4+4)
SelectStorageNodesExclusion-32     1.02ms ± 1%  0.84ms ± 0%  -18.08%  (p=0.029 n=4+4)
SelectNewStorageNodesExclusion-32  1.03ms ± 1%  0.86ms ± 2%  -16.22%  (p=0.029 n=4+4)
FindStorageNodes-32                3.11ms ± 0%  2.79ms ± 1%  -10.27%  (p=0.029 n=4+4)
FindStorageNodesExclusion-32       4.75ms ± 0%  4.43ms ± 1%   -6.56%  (p=0.029 n=4+4)

Change-Id: I1d85e2764eb270f4c2b1998303ccfc1179d65b26
2020-03-30 18:36:23 +03:00
..
benchmark_test.go satellite/overlay: add benchmark for node selection 2020-03-27 23:09:29 +02:00
config.go satellite/overlay: rename newNodePercentage to newNodeFraction 2020-03-19 20:09:32 +00:00
inspector.go common: separate repository 2019-12-27 14:11:15 +02:00
peeridentities_test.go satellite/satellitedb/satellitedbtest: pass ctx as an argument 2020-01-20 16:35:42 +02:00
peeridentities.go common: separate repository 2019-12-27 14:11:15 +02:00
piececount_test.go satellite: use IP for all uplink operations, use hostname for audit and repairs 2020-03-11 09:11:40 -07:00
selection_test.go satellite/overlay: optimize FindStorageNodes 2020-03-30 18:36:23 +03:00
service_test.go satellite/overlay: optimize FindStorageNodes 2020-03-30 18:36:23 +03:00
service.go satellite/overlay: optimize FindStorageNodes 2020-03-30 18:36:23 +03:00
statdb_test.go satellite/{overlay, satellitedb}: account for suspended field in overlay cache 2020-03-17 17:14:56 +00:00
suspension_test.go satellite/{audit,overlay,satellitedb}: implement unknown audit reputation and suspension 2020-03-16 20:29:26 +00:00