device: add benchmark for UAPI Device.IpcGetOperation

Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com>
This commit is contained in:
Josh Bleecher Snyder 2021-01-26 11:39:48 -08:00 committed by Brad Fitzpatrick
parent 23b2790aa0
commit e6ec3852a9
1 changed files with 12 additions and 0 deletions

View File

@ -10,6 +10,7 @@ import (
"errors"
"fmt"
"io"
"io/ioutil"
"net"
"sync"
"sync/atomic"
@ -340,3 +341,14 @@ func BenchmarkThroughput(b *testing.B) {
b.ReportMetric(float64(elapsed)/float64(b.N), "ns/op")
b.ReportMetric(1-float64(b.N)/float64(sent), "packet-loss")
}
func BenchmarkUAPIGet(b *testing.B) {
pair := genTestPair(b)
pair.Send(b, Ping, nil)
pair.Send(b, Pong, nil)
b.ReportAllocs()
b.ResetTimer()
for i := 0; i < b.N; i++ {
pair[0].dev.IpcGetOperation(ioutil.Discard)
}
}