• Mikio Hara's avatar
    net: fix slow network interface manipulations · 322214cf
    Mikio Hara authored
    This CL reduces unnecessary network facility lookups introduced
    by recent changes below.
    
    changeset: 15798:53a4da6a4f4a
    net: return correct point-to-point interface address on linux
    
    changeset: 15799:a81ef8e0cc05
    net: set up IPv6 scoped addressing zone for network facilities
    
    Also adds a test case for issue	4839.
    
    Benchmark results on linux/amd64, virtual machine:
    benchmark                                 old ns/op    new ns/op    delta
    BenchmarkInterfaces-2                         80487        80382   -0.13%
    BenchmarkInterfaceByIndex-2                   72013        71391   -0.86%
    BenchmarkInterfaceByName-2                    79865        80101   +0.30%
    BenchmarkInterfaceAddrs-2                     42071       829677  +1872.09%
    BenchmarkInterfacesAndAddrs-2                 35016       607622  +1635.27%
    BenchmarkInterfacesAndMulticastAddrs-2       169849       169082   -0.45%
    old: 15797:9c3930413c1b, new: tip
    
    Benchmark results on linux/amd64, virtual machine:
    benchmark                                 old ns/op    new ns/op    delta
    BenchmarkInterfaces-2                         80487        81459   +1.21%
    BenchmarkInterfaceByIndex-2                   72013        71512   -0.70%
    BenchmarkInterfaceByName-2                    79865        80567   +0.88%
    BenchmarkInterfaceAddrs-2                     42071       120108  +185.49%
    BenchmarkInterfacesAndAddrs-2                 35016        33259   -5.02%
    BenchmarkInterfacesAndMulticastAddrs-2       169849        82391  -51.49%
    old: 15797:9c3930413c1b, new: tip+CL7400055
    
    Benchmark results on darwin/amd64:
    benchmark                                 old ns/op    new ns/op    delta
    BenchmarkInterfaces-2                         34402        34231   -0.50%
    BenchmarkInterfaceByIndex-2                   13192        12956   -1.79%
    BenchmarkInterfaceByName-2                    34791        34388   -1.16%
    BenchmarkInterfaceAddrs-2                     36565        63906  +74.77%
    BenchmarkInterfacesAndAddrs-2                 17497        31068  +77.56%
    BenchmarkInterfacesAndMulticastAddrs-2        25276        66711  +163.93%
    old: 15797:9c3930413c1b, new: tip
    
    Benchmark results on darwin/amd64:
    benchmark                                 old ns/op    new ns/op    delta
    BenchmarkInterfaces-2                         34402        31854   -7.41%
    BenchmarkInterfaceByIndex-2                   13192        12950   -1.83%
    BenchmarkInterfaceByName-2                    34791        31926   -8.23%
    BenchmarkInterfaceAddrs-2                     36565        42144  +15.26%
    BenchmarkInterfacesAndAddrs-2                 17497        17329   -0.96%
    BenchmarkInterfacesAndMulticastAddrs-2        25276        24870   -1.61%
    old: 15797:9c3930413c1b, new: tip+CL7400055
    
    Update #4234.
    Fixes #4839 (again).
    Fixes #4866.
    
    R=golang-dev, fullung
    CC=golang-dev
    https://golang.org/cl/7400055
    322214cf
Name
Last commit
Last update
api Loading commit data...
doc Loading commit data...
include Loading commit data...
lib Loading commit data...
misc Loading commit data...
src Loading commit data...
test Loading commit data...
.hgignore Loading commit data...
.hgtags Loading commit data...
AUTHORS Loading commit data...
CONTRIBUTORS Loading commit data...
LICENSE Loading commit data...
PATENTS Loading commit data...
README Loading commit data...
favicon.ico Loading commit data...
robots.txt Loading commit data...