diff options
author | Jamie Liu <jamieliu@google.com> | 2019-06-13 15:52:49 -0700 |
---|---|---|
committer | Shentubot <shentubot@google.com> | 2019-06-13 15:53:43 -0700 |
commit | 0c8603084d9399fde250c68fe30a084749d937ff (patch) | |
tree | 80c62211ecb8f3ced9ed15ca09606f3adc83e2f5 /pkg/unet | |
parent | 4fdd560b76dfe4e3df83a8cba5a070ce7142b433 (diff) |
Add p9 and unet benchmarks.
PiperOrigin-RevId: 253122166
Diffstat (limited to 'pkg/unet')
-rw-r--r-- | pkg/unet/unet_test.go | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/pkg/unet/unet_test.go b/pkg/unet/unet_test.go index 763b23c7c..a3cc6f5d3 100644 --- a/pkg/unet/unet_test.go +++ b/pkg/unet/unet_test.go @@ -691,3 +691,45 @@ func TestControlMessage(t *testing.T) { } } } + +func benchmarkSendRecv(b *testing.B, packet bool) { + server, client, err := SocketPair(packet) + if err != nil { + b.Fatalf("SocketPair: got %v, wanted nil", err) + } + defer server.Close() + defer client.Close() + go func() { + buf := make([]byte, 1) + for i := 0; i < b.N; i++ { + n, err := server.Read(buf) + if n != 1 || err != nil { + b.Fatalf("server.Read: got (%d, %v), wanted (1, nil)", n, err) + } + n, err = server.Write(buf) + if n != 1 || err != nil { + b.Fatalf("server.Write: got (%d, %v), wanted (1, nil)", n, err) + } + } + }() + buf := make([]byte, 1) + b.ResetTimer() + for i := 0; i < b.N; i++ { + n, err := client.Write(buf) + if n != 1 || err != nil { + b.Fatalf("client.Write: got (%d, %v), wanted (1, nil)", n, err) + } + n, err = client.Read(buf) + if n != 1 || err != nil { + b.Fatalf("client.Read: got (%d, %v), wanted (1, nil)", n, err) + } + } +} + +func BenchmarkSendRecvStream(b *testing.B) { + benchmarkSendRecv(b, false) +} + +func BenchmarkSendRecvPacket(b *testing.B) { + benchmarkSendRecv(b, true) +} |