tailscale/portlist
Brad Fitzpatrick 5a9d977c78 portlist: reduce CPU parsing portlist
Avoid splitting fields in the common case. Field splitting was 84% of
the overall CPU.

name          old time/op    new time/op    delta
ParsePorts-6    33.3ms ± 2%     6.3ms ± 4%  -80.97%  (p=0.000 n=9+10)

name          old alloc/op   new alloc/op   delta
ParsePorts-6      520B ±79%      408B ± 0%  -21.49%  (p=0.046 n=10+8)

name          old allocs/op  new allocs/op  delta
ParsePorts-6      7.00 ± 0%      7.00 ± 0%     ~     (all equal)

Updates tailscale/corp#2566

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2021-09-13 08:22:47 -07:00
..
clean_test.go portlist: report a better process name for .Net on linux. 2021-03-03 22:30:27 -08:00
clean.go portlist: report a better process name for .Net on linux. 2021-03-03 22:30:27 -08:00
netstat_exec.go all: simplify build tags involving iOS 2021-08-17 11:13:03 -07:00
netstat_test.go portlist: filter out all of 127.0.0.0/8, not just 127.0.0.1/32 2021-04-12 09:17:39 -07:00
netstat.go all: simplify build tags involving iOS 2021-08-17 11:13:03 -07:00
poller.go portlist: unexport SameInodes method 2021-04-09 15:16:36 -07:00
portlist_ios.go all: simplify build tags involving iOS 2021-08-17 11:13:03 -07:00
portlist_linux_test.go portlist: reduce CPU parsing portlist 2021-09-13 08:22:47 -07:00
portlist_linux.go portlist: reduce CPU parsing portlist 2021-09-13 08:22:47 -07:00
portlist_macos.go portlist: fix build tag to build only on macOS, not macOS+iOS. 2021-08-18 16:18:02 -07:00
portlist_other.go all: gofmt with Go 1.17 2021-08-05 15:54:00 -07:00
portlist_test.go portlist: unexport SameInodes method 2021-04-09 15:16:36 -07:00
portlist_windows.go staticcheck.conf: turn off noisy lint errors 2021-06-18 15:48:20 -07:00
portlist.go portlist: de-dup services on same (proto, port) on both IPv4/IPv6 2021-04-13 14:40:33 -07:00