tailscale/control/controlclient
Brad Fitzpatrick cb4a61f951 control/controlclient: don't clone self node on each NetworkMap
Drop in the bucket, but have to start somewhere.

Real wins will come once this is done for peers.

                                 │     before     │                after                │
                                 │      B/op      │     B/op       vs base              │
    MapSessionDelta/size_10-8      10.213Ki ± ∞ ¹   9.650Ki ± ∞ ¹  -5.51% (p=0.008 n=5)
    MapSessionDelta/size_100-8      83.64Ki ± ∞ ¹   83.08Ki ± ∞ ¹  -0.67% (p=0.008 n=5)
    MapSessionDelta/size_1000-8     800.8Ki ± ∞ ¹   800.3Ki ± ∞ ¹  -0.07% (p=0.008 n=5)
    MapSessionDelta/size_10000-8    7.712Mi ± ∞ ¹   7.711Mi ± ∞ ¹  -0.01% (p=0.008 n=5)
    geomean                         271.1Ki         266.8Ki        -1.59%

                                 │    before    │               after                │
                                 │  allocs/op   │  allocs/op    vs base              │
    MapSessionDelta/size_10-8       73.00 ± ∞ ¹    72.00 ± ∞ ¹  -1.37% (p=0.008 n=5)
    MapSessionDelta/size_100-8      524.0 ± ∞ ¹    523.0 ± ∞ ¹  -0.19% (p=0.008 n=5)
    MapSessionDelta/size_1000-8    5.025k ± ∞ ¹   5.024k ± ∞ ¹  -0.02% (p=0.008 n=5)
    MapSessionDelta/size_10000-8   50.02k ± ∞ ¹   50.02k ± ∞ ¹  -0.00% (p=0.040 n=5)
    geomean                        1.761k         1.754k        -0.40%

Updates #1909

Change-Id: Ie19dea3371de251d64d4373dd00422f53c2675ea
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2023-08-21 15:42:33 -07:00
..
auto.go control/controlclient: move lastUpdateGenInformed to tighter scope 2023-08-13 10:39:17 -07:00
client.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
controlclient_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
direct_test.go control/controlclient: add Auto.updateRoutine 2023-08-10 12:23:08 -07:00
direct.go types/netmap, all: make NetworkMap.SelfNode a tailcfg.NodeView 2023-08-21 13:34:49 -07:00
map_test.go types/netmap, all: make NetworkMap.SelfNode a tailcfg.NodeView 2023-08-21 13:34:49 -07:00
map.go control/controlclient: don't clone self node on each NetworkMap 2023-08-21 15:42:33 -07:00
noise_test.go control/controlclient: use dnscache.Resolver for Noise client 2023-05-01 13:22:10 -07:00
noise.go control: use tstime instead of time (#8595) 2023-08-04 19:29:44 -04:00
sign_supported_test.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
sign_supported.go control: use tstime instead of time (#8595) 2023-08-04 19:29:44 -04:00
sign_unsupported.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
sign.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00
status.go all: update copyright and license headers 2023-01-27 15:36:29 -08:00