- 18 Sep, 2017 19 commits
-
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
- 17 Sep, 2017 4 commits
-
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
- 15 Sep, 2017 4 commits
-
-
Kirill Smelkov authored
With some care it is possible for serveRecv to put itself to pause and handoff execution to goroutine for which a packet arrived. See comments in serveRecv about how it is done. For BenchmarkTCPlosr cuts RTT 12.5μs -> 6.6μs .
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
- 14 Sep, 2017 13 commits
-
-
Kirill Smelkov authored
BenchmarkSyncChanRTT-4 5000000 350 ns/op BenchmarkBufChanRTT-4 5000000 352 ns/op BenchmarkBufChanAXRXRTT-4 3000000 407 ns/op BenchmarkNetPipeRTT-4 2000000 938 ns/op BenchmarkNetPipeRTTsr-4 1000000 1594 ns/op <-- here BenchmarkTCPlo-4 300000 4814 ns/op BenchmarkTCPlosr-4 100000 12261 ns/op <-- here BenchmarkLinkNetPipeRTT-4 500000 3017 ns/op BenchmarkLinkTCPRTT-4 100000 15650 ns/op the δ beetwen TCPlo + serveRecv style RX and full link over TCPlo is ~ 3μs. -> need to find out why TCPlosr = TCPlo + 8μs
-
Kirill Smelkov authored
without runtime.Gosched null:00 ; oid=0..16995 nread=68269354 t=536.560158ms (31.569µs / object) x=zsha1.go null:00 ; oid=0..16995 nread=68269354 t=532.416867ms (31.326µs / object) x=zsha1.go null:00 ; oid=0..16995 nread=68269354 t=536.958977ms (31.593µs / object) x=zsha1.go null:00 ; oid=0..16995 nread=68269354 t=534.170594ms (31.429µs / object) x=zsha1.go with runtime.Gosched null:00 ; oid=0..16995 nread=68269354 t=594.966346ms (35.006µs / object) x=zsha1.go null:00 ; oid=0..16995 nread=68269354 t=597.510359ms (35.155µs / object) x=zsha1.go null:00 ; oid=0..16995 nread=68269354 t=598.251026ms (35.199µs / object) x=zsha1.go null:00 ; oid=0..16995 nread=68269354 t=596.02138ms (35.068µs / object) x=zsha1.go ---- -> trace shows runtime.Gosched indeed switches to woken up G without second syscall in serveRecv but serveRecv migrates to different M (so different CPU)
-
Kirill Smelkov authored
LinkNetPipeRTT-4 3.05µs ± 1% 2.99µs ± 0% -2.05% (p=0.008 n=5+5) LinkTCPRTT-4 15.9µs ± 1% 14.3µs ± 2% -10.11% (p=0.008 n=5+5)
-
Kirill Smelkov authored
- BenchmarkLinkNetPipeRTT-4 500000 3189 ns/op 225 B/op 5 allocs/op + BenchmarkLinkNetPipeRTT-4 500000 3035 ns/op 225 B/op 5 allocs/op
-
Kirill Smelkov authored
- BenchmarkLinkNetPipeRTT-4 500000 3555 ns/op 225 B/op 5 allocs/op + BenchmarkLinkNetPipeRTT-4 500000 3189 ns/op 225 B/op 5 allocs/op
-
Kirill Smelkov authored
- BenchmarkLinkNetPipeRTT-4 500000 3768 ns/op 225 B/op 5 allocs/op + BenchmarkLinkNetPipeRTT-4 500000 3555 ns/op 225 B/op 5 allocs/op
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
- BenchmarkLinkNetPipeRTT-4 300000 4825 ns/op 225 B/op 5 allocs/op + BenchmarkLinkNetPipeRTT-4 500000 3807 ns/op 225 B/op 5 allocs/op
-
Kirill Smelkov authored
- BenchmarkLinkNetPipeRTT-4 300000 5668 ns/op 225 B/op 5 allocs/op + BenchmarkLinkNetPipeRTT-4 300000 4825 ns/op 225 B/op 5 allocs/op
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-
Kirill Smelkov authored
-