Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
N
neoppod
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
1
Issues
1
List
Boards
Labels
Milestones
Merge Requests
2
Merge Requests
2
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
neoppod
Commits
a02b6fd8
Commit
a02b6fd8
authored
Apr 06, 2018
by
Kirill Smelkov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
c1b8ffda
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
283 additions
and
241 deletions
+283
-241
go/NOTES-go
go/NOTES-go
+0
-20
go/neo/storage/sqlite/py/gen-testdata
go/neo/storage/sqlite/py/gen-testdata
+1
-1
go/todo.dot
go/todo.dot
+2
-2
go/todo.svg
go/todo.svg
+280
-218
No files found.
go/NOTES-go
View file @
a02b6fd8
...
...
@@ -40,26 +40,6 @@ runtime/HACKING.md
- TODO stats for events (packets received, errors, etc)
- custom memory manager is required to avoid performance hit on e.g. []byte alloc/dealloc
-> go-slab
- interfaces conversion in very hot codepaths are costly:
e.g. having r as io.ReadSeeker and converting it to io.Reader e.g. this way:
io.ReadFull(r, ...)
calls convI2I all the time (no caching) which is not negliable
( recheck it is still true after https://github.com/golang/go/commit/3d1699ea:
-> it is still the case; convI2I cost is ~ 8ns - i.e. it is not big for
non-hot codepaths - uncontended mutex lock/unlock is 15-25ns. )
- x/net/trace to trace requests and connection logging (and packets ?)
- packet log; general log -> glog ?
...
...
go/neo/storage/sqlite/py/gen-testdata
View file @
a02b6fd8
...
...
@@ -39,7 +39,7 @@ def main():
cluster
.
stop
()
cluster
.
waitAll
()
# XXX current neo/go/sqlite limitation: it cannot reply !empty ttrans/tobj on open
# XXX current neo/go/sqlite limitation: it cannot repl
a
y !empty ttrans/tobj on open
# -> open/close storage to get t* flushed
cluster
=
NEOCluster
(
db_list
=
[
"testdata/1.sqlite"
],
name
=
"test"
,
adapter
=
"SQLite"
,
clear_databases
=
False
)
cluster
.
start
()
...
...
go/todo.dot
View file @
a02b6fd8
...
...
@@ -53,14 +53,14 @@ digraph {
Cgo_r_Sgo
[
label
=<
C
<sub>
go
</sub>
read S
<sub>
go
</sub>
>
style
=
filled
fillcolor
=
lightyellow
]
;
Cgo_r_Spy
[
label
=<
C
<sub>
go
</sub>
read S
<sub>
py
</sub>
>
style
=
filled
fillcolor
=
lightyellow
]
;
Cleanup
[
label
=
"Cleanup history"
]
;
Post
[
label
=
"Post"
]
;
Post
[
label
=
"Post"
style
=
filled
fillcolor
=
lightyellow
]
;
//Cpy_patch [label=<py patch: ConnID py=go> style=filled fillcolor=lightyellow]; // C<sub>py</sub> patch for ConnID interop. with S<sub>go</sub>>];
Mmap_go
[
label
=
"? io.ReaderAt via mmap"
]
;
//Protog_fix [label="proto(go/py) compat fix" style=filled fillcolor=lightyellow];
//Mpy_vs_Sgo [label=<M<sub>py</sub> vs S<sub>go</sub>: try/fix> style=filled fillcolor=lightyellow];
io_cancel
[
label
=
"? conn IO vs ctx cancel"
]
;
load_serial_next
[
label
=<
? GetObject return += serial
<sub>
next
</sub>
>
]
;
load_serial_next
[
label
=<
? GetObject return += serial
<sub>
next
</sub>
>
style
=
filled
fillcolor
=
lightyellow
]
;
sha1_index
[
label
=
"? sha1 index"
]
;
//B_link_recv [label="Bench link.Recv1/Ask1" style=filled fillcolor=lightyellow];
...
...
go/todo.svg
View file @
a02b6fd8
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.
38.0 (20140413.2041
)
<!-- Generated by graphviz version 2.
40.1 (20161225.0304
)
-->
<!-- Title: %3 Pages: 1 -->
<svg
width=
"1509pt"
height=
"601pt"
viewBox=
"0.00 0.00 1508.99 601.22"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
>
<g
id=
"graph0"
class=
"graph"
transform=
"scale(1 1) rotate(0) translate(4 597.22)"
>
<g
id=
"graph0"
class=
"graph"
transform=
"scale(1 1) rotate(0) translate(4 597.22
03
)"
>
<title>
%3
</title>
<polygon
fill=
"
white"
stroke=
"none"
points=
"-4,4 -4,-597.22 1504.99,-597.22 1504.9
9,4 -4,4"
/>
<polygon
fill=
"
#ffffff"
stroke=
"transparent"
points=
"-4,4 -4,-597.2203 1504.9919,-597.2203 1504.991
9,4 -4,4"
/>
<!-- Cgo -->
<g
id=
"node1"
class=
"node"
><title>
Cgo
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"446.747"
cy=
"-503.22"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"435.247"
y=
"-500.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
C
</text>
<text
text-anchor=
"start"
x=
"445.247"
y=
"-500.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<g
id=
"node1"
class=
"node"
>
<title>
Cgo
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"444.7468"
cy=
"-503.2203"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"433.2468"
y=
"-500.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
C
</text>
<text
text-anchor=
"start"
x=
"443.2468"
y=
"-500.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
</g>
<!-- SCgo_t -->
<g
id=
"node2"
class=
"node"
><title>
SCgo_t
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"446.747"
cy=
"-431.22"
rx=
"69.5877"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"401.247"
y=
"-428.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
S
</text>
<text
text-anchor=
"start"
x=
"409.247"
y=
"-428.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<text
text-anchor=
"start"
x=
"422.247"
y=
"-428.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
 
/ C
</text>
<text
text-anchor=
"start"
x=
"447.247"
y=
"-428.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<text
text-anchor=
"start"
x=
"460.247"
y=
"-428.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
 
tests
</text>
<g
id=
"node2"
class=
"node"
>
<title>
SCgo_t
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"444.7468"
cy=
"-431.2203"
rx=
"69.5877"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"399.2468"
y=
"-428.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
S
</text>
<text
text-anchor=
"start"
x=
"407.2468"
y=
"-428.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
<text
text-anchor=
"start"
x=
"420.2468"
y=
"-428.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
 
/ C
</text>
<text
text-anchor=
"start"
x=
"445.2468"
y=
"-428.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
<text
text-anchor=
"start"
x=
"458.2468"
y=
"-428.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
 
tests
</text>
</g>
<!-- Cgo->SCgo_t -->
<g
id=
"edge1"
class=
"edge"
><title>
Cgo
->
SCgo_t
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M440.907,-485.631C440.044,-477.727 439.795,-468.072 440.159,-459.156"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"443.65,-459.399 440.867,-449.177 436.668,-458.903 443.65,-459.399"
/>
<g
id=
"edge1"
class=
"edge"
>
<title>
Cgo
->
SCgo_t
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M438.8311,-485.4226C438.0473,-477.6067 437.8158,-468.2374 438.1366,-459.5039"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"441.6429,-459.5203 438.8018,-449.3135 434.6577,-459.0642 441.6429,-459.5203"
/>
</g>
<!-- SCgo_t->Cgo -->
<g
id=
"edge5"
class=
"edge"
><title>
SCgo_t
->
Cgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M452.626,-449.177C453.461,-457.048 453.695,-466.594 453.33,-475.407"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"449.821,-475.404 452.587,-485.631 456.803,-475.911 449.821,-475.404"
/>
<g
id=
"edge5"
class=
"edge"
>
<title>
SCgo_t
->
Cgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M450.6918,-449.3135C451.4618,-457.168 451.6794,-466.5485 451.3447,-475.2657"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"447.8406,-475.2105 450.6626,-485.4226 454.8249,-475.6796 447.8406,-475.2105"
/>
</g>
<!-- Sgo -->
<g
id=
"node3"
class=
"node"
><title>
Sgo
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"361.747"
cy=
"-359.22"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"351.247"
y=
"-356.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
S
</text>
<text
text-anchor=
"start"
x=
"359.247"
y=
"-356.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<g
id=
"node3"
class=
"node"
>
<title>
Sgo
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"359.7468"
cy=
"-359.2203"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"349.2468"
y=
"-356.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
S
</text>
<text
text-anchor=
"start"
x=
"357.2468"
y=
"-356.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
</g>
<!-- SCgo_t->Sgo -->
<g
id=
"edge4"
class=
"edge"
><title>
SCgo_t
->
Sgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M421.698,-414.336C409.061,-404.832 394.04,-392.614 382.113,-382.193"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"384.207,-379.371 374.417,-375.322 379.545,-384.593 384.207,-379.371"
/>
<g
id=
"edge4"
class=
"edge"
>
<title>
SCgo_t
->
Sgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M418.7631,-414.1574C406.4167,-404.5617 391.9622,-392.4567 380.3707,-382.0532"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"382.6015,-379.3501 372.8643,-375.1743 377.8722,-384.5109 382.6015,-379.3501"
/>
</g>
<!-- Mgo -->
<g
id=
"node4"
class=
"node"
><title>
Mgo
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"446.747"
cy=
"-359.22"
rx=
"27.0966"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"433.747"
y=
"-356.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
M
</text>
<text
text-anchor=
"start"
x=
"446.747"
y=
"-356.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<g
id=
"node4"
class=
"node"
>
<title>
Mgo
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"444.7468"
cy=
"-359.2203"
rx=
"27.0966"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"431.7468"
y=
"-356.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
M
</text>
<text
text-anchor=
"start"
x=
"444.7468"
y=
"-356.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
</g>
<!-- SCgo_t->Mgo -->
<g
id=
"edge3"
class=
"edge"
><title>
SCgo_t
->
Mgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M446.747,-412.917C446.747,-405.203 446.747,-395.933 446.747,-387.333"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"450.247,-387.325 446.747,-377.325 443.247,-387.325 450.247,-387.325"
/>
<g
id=
"edge3"
class=
"edge"
>
<title>
SCgo_t
->
Mgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M444.7468,-413.0517C444.7468,-405.3513 444.7468,-396.1947 444.7468,-387.637"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"448.2469,-387.6336 444.7468,-377.6336 441.2469,-387.6336 448.2469,-387.6336"
/>
</g>
<!-- Sgo->SCgo_t -->
<g
id=
"edge2"
class=
"edge"
><title>
Sgo
->
SCgo_t
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M381.213,-371.971C394.081,-381.333 410.782,-394.747 424.19,-406.343"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"422.234,-409.285 432.049,-413.275 426.865,-404.035 422.234,-409.285"
/>
<g
id=
"edge2"
class=
"edge"
>
<title>
Sgo
->
SCgo_t
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M379.635,-371.6232C392.3478,-381.1645 408.6803,-394.6584 421.8901,-406.3939"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"419.8897,-409.3042 429.6513,-413.4226 424.5885,-404.1156 419.8897,-409.3042"
/>
</g>
<!-- io_cancel -->
<g
id=
"node5"
class=
"node"
><title>
io_cancel
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"124.747"
cy=
"-287.22"
rx=
"94.4839"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"124.747"
y=
"-283.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
? conn IO vs ctx cancel
</text>
<g
id=
"node5"
class=
"node"
>
<title>
io_cancel
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"122.7468"
cy=
"-287.2203"
rx=
"94.4839"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"122.7468"
y=
"-283.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
? conn IO vs ctx cancel
</text>
</g>
<!-- Sgo->io_cancel -->
<g
id=
"edge6"
class=
"edge"
><title>
Sgo
->
io_cancel
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M337.276,-350.993C301.242,-340.35 232.831,-320.144 183.338,-305.526"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"184.289,-302.157 173.707,-302.681 182.306,-308.871 184.289,-302.157"
/>
<g
id=
"edge6"
class=
"edge"
>
<title>
Sgo
->
io_cancel
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M334.8316,-351.6512C299.0666,-340.7858 232.0753,-320.4341 182.9213,-305.5012"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"183.9284,-302.1493 173.3428,-302.5913 181.8936,-308.847 183.9284,-302.1493"
/>
</g>
<!-- load_serial_next -->
<g
id=
"node6"
class=
"node"
><title>
load_serial_next
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"361.747"
cy=
"-287.22"
rx=
"124.578"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"273.747"
y=
"-284.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
? GetObject return += serial
</text>
<text
text-anchor=
"start"
x=
"428.747"
y=
"-284.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
next
</text>
<g
id=
"node6"
class=
"node"
>
<title>
load_serial_next
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"359.7468"
cy=
"-287.2203"
rx=
"124.5782"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"271.7468"
y=
"-284.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
? GetObject return += serial
</text>
<text
text-anchor=
"start"
x=
"426.7468"
y=
"-284.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
next
</text>
</g>
<!-- Sgo->load_serial_next -->
<g
id=
"edge7"
class=
"edge"
><title>
Sgo
->
load_serial_next
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M361.747,-340.917C361.747,-333.203 361.747,-323.933 361.747,-315.333"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"365.247,-315.325 361.747,-305.325 358.247,-315.325 365.247,-315.325"
/>
<g
id=
"edge7"
class=
"edge"
>
<title>
Sgo
->
load_serial_next
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M359.7468,-341.0517C359.7468,-333.3513 359.7468,-324.1947 359.7468,-315.637"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"363.2469,-315.6336 359.7468,-305.6336 356.2469,-315.6336 363.2469,-315.6336"
/>
</g>
<!-- Sgo_speed -->
<g
id=
"node7"
class=
"node"
><title>
Sgo_speed
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"581.747"
cy=
"-287.22"
rx=
"77.1866"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"530.247"
y=
"-284.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
S
</text>
<text
text-anchor=
"start"
x=
"538.247"
y=
"-284.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<text
text-anchor=
"start"
x=
"551.247"
y=
"-284.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
 
speed/latency
</text>
<g
id=
"node7"
class=
"node"
>
<title>
Sgo_speed
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"579.7468"
cy=
"-287.2203"
rx=
"77.1866"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"528.2468"
y=
"-284.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
S
</text>
<text
text-anchor=
"start"
x=
"536.2468"
y=
"-284.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
<text
text-anchor=
"start"
x=
"549.2468"
y=
"-284.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
 
speed/latency
</text>
</g>
<!-- Sgo->Sgo_speed -->
<g
id=
"edge8"
class=
"edge"
><title>
Sgo
->
Sgo_speed
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M385.122,-349.933C393.217,-347.11 402.363,-343.973 410.747,-341.22 449.315,-328.557 493.039,-315.02 526.619,-304.796"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"527.701,-308.125 536.252,-301.87 525.666,-301.428 527.701,-308.125"
/>
<g
id=
"edge8"
class=
"edge"
>
<title>
Sgo
->
Sgo_speed
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M383.594,-350.2095C391.564,-347.265 400.5131,-344.0311 408.7468,-341.2203 446.5576,-328.3131 489.4316,-314.7764 522.7906,-304.485"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"523.8485,-307.8215 532.3773,-301.5359 521.7902,-301.1309 523.8485,-307.8215"
/>
</g>
<!-- garbage -->
<g
id=
"node8"
class=
"node"
><title>
garbage
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"154.747"
cy=
"-206.35"
rx=
"38.1938"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"154.747"
y=
"-202.65"
font-family=
"Times,serif"
font-size=
"14.00"
>
garbage
</text>
<g
id=
"node8"
class=
"node"
>
<title>
garbage
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"154.7468"
cy=
"-206.3503"
rx=
"38.1938"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"154.7468"
y=
"-202.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
garbage
</text>
</g>
<!-- Sgo_speed->garbage -->
<g
id=
"edge9"
class=
"edge"
><title>
Sgo_speed
->
garbage
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M524.872,-274.847C515.16,-272.942 505.167,-271.006 495.747,-269.22 389.973,-249.172 265.475,-226.924 200.098,-215.346"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"200.582,-211.877 190.125,-213.581 199.363,-218.77 200.582,-211.877"
/>
<g
id=
"edge9"
class=
"edge"
>
<title>
Sgo_speed
->
garbage
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M522.4219,-275.0311C512.854,-273.0515 503.0254,-271.0515 493.7468,-269.2203 389.2289,-248.5934 266.1854,-226.2596 200.8934,-214.5621"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"201.3822,-211.094 190.922,-212.7779 200.1492,-217.9846 201.3822,-211.094"
/>
</g>
<!-- diskio -->
<g
id=
"node9"
class=
"node"
><title>
diskio
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"466.747"
cy=
"-206.35"
rx=
"34.394"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"466.747"
y=
"-202.65"
font-family=
"Times,serif"
font-size=
"14.00"
>
disk io
</text>
<g
id=
"node9"
class=
"node"
>
<title>
diskio
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"466.7468"
cy=
"-206.3503"
rx=
"34.394"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"466.7468"
y=
"-202.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
disk io
</text>
</g>
<!-- Sgo_speed->diskio -->
<g
id=
"edge10"
class=
"edge"
><title>
Sgo_speed
->
diskio
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M558.197,-270.069C539.962,-257.563 514.63,-240.19 495.25,-226.898"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"497.038,-223.88 486.811,-221.111 493.078,-229.653 497.038,-223.88"
/>
<g
id=
"edge10"
class=
"edge"
>
<title>
Sgo_speed
->
diskio
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M555.7824,-270.0699C538.1416,-257.445 514.0815,-240.226 495.4196,-226.8704"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"497.4366,-224.0099 487.2676,-221.0363 493.3627,-229.7023 497.4366,-224.0099"
/>
</g>
<!-- ConnClose_notimer -->
<g
id=
"node10"
class=
"node"
><title>
ConnClose_notimer
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"581.747"
cy=
"-206.35"
rx=
"56.6372"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"581.747"
y=
"-210.15"
font-family=
"Times,serif"
font-size=
"14.00"
>
Conn.Close
</text>
<text
text-anchor=
"middle"
x=
"581.747"
y=
"-195.15"
font-family=
"Times,serif"
font-size=
"14.00"
>
no timer
</text>
<g
id=
"node10"
class=
"node"
>
<title>
ConnClose_notimer
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"579.7468"
cy=
"-206.3503"
rx=
"56.6372"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"579.7468"
y=
"-210.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Conn.Close
</text>
<text
text-anchor=
"middle"
x=
"579.7468"
y=
"-195.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
no timer
</text>
</g>
<!-- Sgo_speed->ConnClose_notimer -->
<g
id=
"edge11"
class=
"edge"
><title>
Sgo_speed
->
ConnClose_notimer
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M581.747,-269.107C581.747,-261.617 581.747,-252.526 581.747,-243.648"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"585.247,-243.433 581.747,-233.433 578.247,-243.433 585.247,-243.433"
/>
<g
id=
"edge11"
class=
"edge"
>
<title>
Sgo_speed
->
ConnClose_notimer
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M579.7468,-268.8697C579.7468,-261.2998 579.7468,-252.2403 579.7468,-243.3984"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"583.2469,-243.2209 579.7468,-233.2209 576.2469,-243.2209 583.2469,-243.2209"
/>
</g>
<!-- osnet_latency -->
<g
id=
"node11"
class=
"node"
><title>
osnet_latency
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"719.747"
cy=
"-206.35"
rx=
"60.2083"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"719.747"
y=
"-210.15"
font-family=
"Times,serif"
font-size=
"14.00"
>
OS/Network
</text>
<text
text-anchor=
"middle"
x=
"719.747"
y=
"-195.15"
font-family=
"Times,serif"
font-size=
"14.00"
>
latency
</text>
<g
id=
"node11"
class=
"node"
>
<title>
osnet_latency
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"717.7468"
cy=
"-206.3503"
rx=
"60.2083"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"717.7468"
y=
"-210.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
OS/Network
</text>
<text
text-anchor=
"middle"
x=
"717.7468"
y=
"-195.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
latency
</text>
</g>
<!-- Sgo_speed->osnet_latency -->
<g
id=
"edge12"
class=
"edge"
><title>
Sgo_speed
->
osnet_latency
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M609.673,-270.26C628.349,-259.586 653.336,-245.306 674.782,-233.048"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"676.783,-235.936 683.728,-227.936 673.309,-229.859 676.783,-235.936"
/>
<g
id=
"edge12"
class=
"edge"
>
<title>
Sgo_speed
->
osnet_latency
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M608.3405,-270.464C626.7846,-259.6555 651.176,-245.3618 672.247,-233.0139"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"674.189,-235.9326 681.0471,-227.8569 670.6498,-229.8932 674.189,-235.9326"
/>
</g>
<!-- QSgo_speed -->
<g
id=
"node12"
class=
"node"
><title>
QSgo_speed
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"1088.75"
cy=
"-206.35"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"1085.25"
y=
"-202.65"
font-family=
"Times,serif"
font-size=
"14.00"
>
?
</text>
<g
id=
"node12"
class=
"node"
>
<title>
QSgo_speed
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1088.7468"
cy=
"-206.3503"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"1085.2468"
y=
"-202.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
?
</text>
</g>
<!-- Sgo_speed->QSgo_speed -->
<g
id=
"edge13"
class=
"edge"
><title>
Sgo_speed
->
QSgo_speed
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M644.169,-276.51C751.392,-259.83 967.259,-226.249 1052.72,-212.954"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"1053.38,-216.395 1062.72,-211.399 1052.3,-209.478 1053.38,-216.395"
/>
<g
id=
"edge13"
class=
"edge"
>
<title>
Sgo_speed
->
QSgo_speed
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M643.6966,-277.06C751.6053,-259.9154 966.454,-225.7802 1052.1843,-212.1594"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1052.8935,-215.5907 1062.2205,-210.5648 1051.7951,-208.6774 1052.8935,-215.5907"
/>
</g>
<!-- pktbuf_alloc -->
<g
id=
"node17"
class=
"node"
><title>
pktbuf_alloc
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"35.7468"
cy=
"-116.61"
rx=
"35.9954"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"16.2468"
y=
"-112.91"
font-family=
"Times,serif"
font-size=
"14.00"
>
PktBuf
</text>
<g
id=
"node17"
class=
"node"
>
<title>
pktbuf_alloc
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"35.7468"
cy=
"-116.6102"
rx=
"35.9954"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"16.2468"
y=
"-112.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
PktBuf
</text>
</g>
<!-- garbage->pktbuf_alloc -->
<g
id=
"edge18"
class=
"edge"
><title>
garbage
->
pktbuf_alloc
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M135.096,-190.862C115.515,-176.424 85.2765,-154.129 63.3016,-137.927"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"65.1574,-134.946 55.0316,-131.829 61.0033,-140.581 65.1574,-134.946"
/>
<g
id=
"edge18"
class=
"edge"
>
<title>
garbage
->
pktbuf_alloc
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M134.29,-190.9234C114.9304,-176.324 85.6976,-154.279 64.0952,-137.9882"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"66.0283,-135.0623 55.9367,-131.8357 61.8135,-140.6513 66.0283,-135.0623"
/>
</g>
<!-- msg_alloc -->
<g
id=
"node18"
class=
"node"
><title>
msg_alloc
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"116.747"
cy=
"-116.61"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"104.247"
y=
"-112.91"
font-family=
"Times,serif"
font-size=
"14.00"
>
Msg
</text>
<g
id=
"node18"
class=
"node"
>
<title>
msg_alloc
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"116.7468"
cy=
"-116.6102"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"104.2468"
y=
"-112.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Msg
</text>
</g>
<!-- garbage->msg_alloc -->
<g
id=
"edge19"
class=
"edge"
><title>
garbage
->
msg_alloc
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M147.42,-188.433C141.918,-175.729 134.283,-158.1 128.007,-143.61"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"131.108,-141.963 123.922,-134.178 124.685,-144.745 131.108,-141.963"
/>
<g
id=
"edge19"
class=
"edge"
>
<title>
garbage
->
msg_alloc
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M147.2393,-188.6205C141.7913,-175.7547 134.3241,-158.1203 128.1428,-143.5227"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"131.2318,-141.8414 124.1095,-133.9977 124.7859,-144.571 131.2318,-141.8414"
/>
</g>
<!-- conn_alloc -->
<g
id=
"node19"
class=
"node"
><title>
conn_alloc
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"191.747"
cy=
"-116.61"
rx=
"29.795"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"176.747"
y=
"-112.91"
font-family=
"Times,serif"
font-size=
"14.00"
>
Conn
</text>
<g
id=
"node19"
class=
"node"
>
<title>
conn_alloc
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"191.7468"
cy=
"-116.6102"
rx=
"29.795"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"176.7468"
y=
"-112.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Conn
</text>
</g>
<!-- garbage->conn_alloc -->
<g
id=
"edge20"
class=
"edge"
><title>
garbage
->
conn_alloc
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M161.881,-188.433C167.238,-175.729 174.672,-158.1 180.783,-143.61"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"184.1,-144.752 184.76,-134.178 177.65,-142.032 184.1,-144.752"
/>
<g
id=
"edge20"
class=
"edge"
>
<title>
garbage
->
conn_alloc
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M162.0568,-188.6205C167.3272,-175.8377 174.5384,-158.3477 180.5341,-143.8056"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"183.876,-144.8823 184.452,-134.3031 177.4044,-142.214 183.876,-144.8823"
/>
</g>
<!-- gosched -->
<g
id=
"node20"
class=
"node"
><title>
gosched
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"black"
cx=
"304.747"
cy=
"-116.61"
rx=
"65.1077"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"304.747"
y=
"-120.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
?
</text>
<text
text-anchor=
"middle"
x=
"304.747"
y=
"-105.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
go scheduling
</text>
<g
id=
"node20"
class=
"node"
>
<title>
gosched
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"304.7468"
cy=
"-116.6102"
rx=
"65.1077"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"304.7468"
y=
"-120.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
?
</text>
<text
text-anchor=
"middle"
x=
"304.7468"
y=
"-105.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
go scheduling
</text>
</g>
<!-- diskio->gosched -->
<g
id=
"edge21"
class=
"edge"
><title>
diskio
->
gosched
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M443.536,-192.779C419.829,-179.94 382.342,-159.636 352.3,-143.365"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"353.7,-140.143 343.24,-138.458 350.366,-146.298 353.7,-140.143"
/>
<g
id=
"edge21"
class=
"edge"
>
<title>
diskio
->
gosched
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M442.8432,-193.1088C419.2335,-180.0302 382.4561,-159.6573 352.7895,-143.2235"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"354.277,-140.0464 343.8334,-138.2622 350.8849,-146.1696 354.277,-140.0464"
/>
</g>
<!-- GOMAXPROCS -->
<g
id=
"node21"
class=
"node"
><title>
GOMAXPROCS
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"466.747"
cy=
"-116.61"
rx=
"78.4777"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"466.747"
y=
"-120.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
?
</text>
<text
text-anchor=
"middle"
x=
"466.747"
y=
"-105.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
GOMAXPROCS
</text>
<g
id=
"node21"
class=
"node"
>
<title>
GOMAXPROCS
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"466.7468"
cy=
"-116.6102"
rx=
"78.4777"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"466.7468"
y=
"-120.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
?
</text>
<text
text-anchor=
"middle"
x=
"466.7468"
y=
"-105.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
GOMAXPROCS
</text>
</g>
<!-- diskio->GOMAXPROCS -->
<g
id=
"edge22"
class=
"edge"
><title>
diskio
->
GOMAXPROCS
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M466.747,-188.016C466.747,-178.204 466.747,-165.557 466.747,-153.694"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"470.247,-153.562 466.747,-143.562 463.247,-153.562 470.247,-153.562"
/>
<g
id=
"edge22"
class=
"edge"
>
<title>
diskio
->
GOMAXPROCS
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M466.7468,-188.19C466.7468,-178.287 466.7468,-165.6549 466.7468,-153.7674"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"470.2469,-153.5998 466.7468,-143.5998 463.2469,-153.5998 470.2469,-153.5998"
/>
</g>
<!-- rx_no_delay -->
<g
id=
"node27"
class=
"node"
><title>
rx_no_delay
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"607.747"
cy=
"-116.61"
rx=
"44.5955"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"607.747"
y=
"-120.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
net rx
</text>
<text
text-anchor=
"middle"
x=
"607.747"
y=
"-105.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
no delay
</text>
<g
id=
"node27"
class=
"node"
>
<title>
rx_no_delay
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"607.7468"
cy=
"-116.6102"
rx=
"44.5955"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"607.7468"
y=
"-120.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
net rx
</text>
<text
text-anchor=
"middle"
x=
"607.7468"
y=
"-105.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
no delay
</text>
</g>
<!-- osnet_latency->rx_no_delay -->
<g
id=
"edge27"
class=
"edge"
><title>
osnet_latency
->
rx_no_delay
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M690.904,-182.755C676.002,-171.081 657.714,-156.754 642.087,-144.512"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"644.22,-141.737 634.19,-138.325 639.903,-147.247 644.22,-141.737"
/>
<g
id=
"edge27"
class=
"edge"
>
<title>
osnet_latency
->
rx_no_delay
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M688.8456,-182.7721C674.6666,-171.2046 657.4749,-157.1793 642.5757,-145.0242"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"644.529,-142.1008 634.5679,-138.4913 640.104,-147.5248 644.529,-142.1008"
/>
</g>
<!-- nocstates -->
<g
id=
"node28"
class=
"node"
><title>
nocstates
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"723.747"
cy=
"-116.61"
rx=
"53.8905"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"723.747"
y=
"-112.91"
font-family=
"Times,serif"
font-size=
"14.00"
>
disable
>
C1
</text>
<g
id=
"node28"
class=
"node"
>
<title>
nocstates
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"723.7468"
cy=
"-116.6102"
rx=
"53.8905"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"723.7468"
y=
"-112.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
disable
>
C1
</text>
</g>
<!-- osnet_latency->nocstates -->
<g
id=
"edge28"
class=
"edge"
><title>
osnet_latency
->
nocstates
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M720.947,-179.025C721.437,-168.274 722.004,-155.839 722.499,-144.982"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"726.005,-144.921 722.964,-134.772 719.013,-144.602 726.005,-144.921"
/>
<g
id=
"edge28"
class=
"edge"
>
<title>
osnet_latency
->
nocstates
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M719.547,-179.4253C720.2795,-168.4705 721.1261,-155.8071 721.8666,-144.7328"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"725.3617,-144.9209 722.5367,-134.7097 718.3773,-144.4539 725.3617,-144.9209"
/>
</g>
<!-- tcp_latency -->
<g
id=
"node29"
class=
"node"
><title>
tcp_latency
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"839.747"
cy=
"-116.61"
rx=
"44.5955"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"839.747"
y=
"-120.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
TCP RR
</text>
<text
text-anchor=
"middle"
x=
"839.747"
y=
"-105.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
latency
</text>
<g
id=
"node29"
class=
"node"
>
<title>
tcp_latency
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"839.7468"
cy=
"-116.6102"
rx=
"44.5955"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"839.7468"
y=
"-120.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
TCP RR
</text>
<text
text-anchor=
"middle"
x=
"839.7468"
y=
"-105.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
latency
</text>
</g>
<!-- osnet_latency->tcp_latency -->
<g
id=
"edge29"
class=
"edge"
><title>
osnet_latency
->
tcp_latency
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M750.338,-182.983C766.689,-171.028 786.911,-156.242 803.985,-143.758"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"806.077,-146.564 812.083,-137.837 801.945,-140.914 806.077,-146.564"
/>
<g
id=
"edge29"
class=
"edge"
>
<title>
osnet_latency
->
tcp_latency
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M749.1649,-183.24C765.6679,-171.1008 785.9823,-156.158 803.1883,-143.5017"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"805.3733,-146.2394 811.3549,-137.4946 801.2255,-140.6006 805.3733,-146.2394"
/>
</g>
<!-- prefetch_slow -->
<g
id=
"node13"
class=
"node"
><title>
prefetch_slow
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"952.747"
cy=
"-116.61"
rx=
"50.41"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"952.747"
y=
"-120.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
? prefetch
</text>
<text
text-anchor=
"middle"
x=
"952.747"
y=
"-105.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
slow
</text>
<g
id=
"node13"
class=
"node"
>
<title>
prefetch_slow
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"952.7468"
cy=
"-116.6102"
rx=
"50.41"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"952.7468"
y=
"-120.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
? prefetch
</text>
<text
text-anchor=
"middle"
x=
"952.7468"
y=
"-105.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
slow
</text>
</g>
<!-- QSgo_speed->prefetch_slow -->
<g
id=
"edge14"
class=
"edge"
><title>
QSgo_speed
->
prefetch_slow
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M1069.84,-193.15C1049.99,-180.346 1018.19,-159.833 992.742,-143.413"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"994.334,-140.275 984.033,-137.795 990.539,-146.157 994.334,-140.275"
/>
<g
id=
"edge14"
class=
"edge"
>
<title>
QSgo_speed
->
prefetch_slow
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1069.5498,-193.6831C1049.7696,-180.631 1018.3452,-159.8955 993.071,-143.2183"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"994.6913,-140.0941 984.4169,-137.5078 990.8359,-145.9368 994.6913,-140.0941"
/>
</g>
<!-- parallel_slow -->
<g
id=
"node14"
class=
"node"
><title>
parallel_slow
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"1088.75"
cy=
"-116.61"
rx=
"67.7647"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"1088.75"
y=
"-120.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
? many clients
</text>
<text
text-anchor=
"middle"
x=
"1088.75"
y=
"-105.41"
font-family=
"Times,serif"
font-size=
"14.00"
>
Sgo slower
</text>
<g
id=
"node14"
class=
"node"
>
<title>
parallel_slow
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1088.7468"
cy=
"-116.6102"
rx=
"67.7647"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"1088.7468"
y=
"-120.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
? many clients
</text>
<text
text-anchor=
"middle"
x=
"1088.7468"
y=
"-105.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Sgo slower
</text>
</g>
<!-- QSgo_speed->parallel_slow -->
<g
id=
"edge15"
class=
"edge"
><title>
QSgo_speed
->
parallel_slow
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M1088.75,-188.016C1088.75,-178.204 1088.75,-165.557 1088.75,-153.694"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"1092.25,-153.562 1088.75,-143.562 1085.25,-153.562 1092.25,-153.562"
/>
<g
id=
"edge15"
class=
"edge"
>
<title>
QSgo_speed
->
parallel_slow
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1088.7468,-188.19C1088.7468,-178.287 1088.7468,-165.6549 1088.7468,-153.7674"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1092.2469,-153.5998 1088.7468,-143.5998 1085.2469,-153.5998 1092.2469,-153.5998"
/>
</g>
<!-- Mmap_go -->
<g
id=
"node15"
class=
"node"
><title>
Mmap_go
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"1273.75"
cy=
"-116.61"
rx=
"98.5829"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1273.75"
y=
"-112.91"
font-family=
"Times,serif"
font-size=
"14.00"
>
? io.ReaderAt via mmap
</text>
<g
id=
"node15"
class=
"node"
>
<title>
Mmap_go
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1273.7468"
cy=
"-116.6102"
rx=
"98.5829"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1273.7468"
y=
"-112.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
? io.ReaderAt via mmap
</text>
</g>
<!-- QSgo_speed->Mmap_go -->
<g
id=
"edge16"
class=
"edge"
><title>
QSgo_speed
->
Mmap_go
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M1110.33,-195.114C1139.77,-181.153 1193.15,-155.836 1230.88,-137.942"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"1232.57,-141.012 1240.11,-133.564 1229.57,-134.687 1232.57,-141.012"
/>
<g
id=
"edge16"
class=
"edge"
>
<title>
QSgo_speed
->
Mmap_go
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1110.6952,-195.7035C1139.9009,-181.5364 1192.2089,-156.1627 1229.7088,-137.9722"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1231.4308,-141.027 1238.9005,-133.5135 1228.3756,-134.7289 1231.4308,-141.027"
/>
</g>
<!-- sha1_index -->
<g
id=
"node16"
class=
"node"
><title>
sha1_index
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"1445.75"
cy=
"-116.61"
rx=
"55.4913"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1445.75"
y=
"-112.91"
font-family=
"Times,serif"
font-size=
"14.00"
>
? sha1 index
</text>
<g
id=
"node16"
class=
"node"
>
<title>
sha1_index
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1445.7468"
cy=
"-116.6102"
rx=
"55.4913"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1445.7468"
y=
"-112.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
? sha1 index
</text>
</g>
<!-- QSgo_speed->sha1_index -->
<g
id=
"edge17"
class=
"edge"
><title>
QSgo_speed
->
sha1_index
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M1115,-201.4C1166.76,-193.267 1285.28,-172.912 1381.75,-143.48 1389.4,-141.144 1397.42,-138.266 1405.09,-135.287"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"1406.58,-138.46 1414.57,-131.494 1403.98,-131.961 1406.58,-138.46"
/>
<g
id=
"edge17"
class=
"edge"
>
<title>
QSgo_speed
->
sha1_index
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1115.4384,-202.3339C1167.454,-194.1338 1285.7058,-173.6563 1381.7468,-143.4802 1389.2645,-141.1182 1397.1174,-138.2097 1404.6437,-135.188"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1406.0529,-138.3927 1413.9526,-131.3326 1403.3744,-131.9254 1406.0529,-138.3927"
/>
</g>
<!-- Cpy_r_Sgo -->
<g
id=
"node22"
class=
"node"
><title>
Cpy_r_Sgo
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"258.747"
cy=
"-431.22"
rx=
"61.99"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"219.247"
y=
"-428.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
C
</text>
<text
text-anchor=
"start"
x=
"229.247"
y=
"-428.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
py
</text>
<text
text-anchor=
"start"
x=
"242.247"
y=
"-428.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
 
read S
</text>
<text
text-anchor=
"start"
x=
"285.247"
y=
"-428.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<g
id=
"node22"
class=
"node"
>
<title>
Cpy_r_Sgo
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"256.7468"
cy=
"-431.2203"
rx=
"61.99"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"217.2468"
y=
"-428.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
C
</text>
<text
text-anchor=
"start"
x=
"227.2468"
y=
"-428.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
py
</text>
<text
text-anchor=
"start"
x=
"240.2468"
y=
"-428.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
 
read S
</text>
<text
text-anchor=
"start"
x=
"283.2468"
y=
"-428.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
</g>
<!-- Cpy_r_Sgo->Sgo -->
<g
id=
"edge23"
class=
"edge"
><title>
Cpy_r_Sgo
->
Sgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M281.862,-414.511C297.576,-403.832 318.417,-389.667 334.872,-378.485"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"337.199,-381.135 343.502,-372.62 333.264,-375.346 337.199,-381.135"
/>
<g
id=
"edge23"
class=
"edge"
>
<title>
Cpy_r_Sgo
->
Sgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M280.636,-414.5211C296.0799,-403.7254 316.2271,-389.6419 332.3244,-378.3894"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"334.6042,-381.0661 340.7951,-372.4682 330.5937,-375.3289 334.6042,-381.0661"
/>
</g>
<!-- Cgo_r_Sgo -->
<g
id=
"node23"
class=
"node"
><title>
Cgo_r_Sgo
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"348.747"
cy=
"-575.22"
rx=
"61.99"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"309.247"
y=
"-572.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
C
</text>
<text
text-anchor=
"start"
x=
"319.247"
y=
"-572.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<text
text-anchor=
"start"
x=
"332.247"
y=
"-572.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
 
read S
</text>
<text
text-anchor=
"start"
x=
"375.247"
y=
"-572.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<g
id=
"node23"
class=
"node"
>
<title>
Cgo_r_Sgo
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"346.7468"
cy=
"-575.2203"
rx=
"61.99"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"307.2468"
y=
"-572.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
C
</text>
<text
text-anchor=
"start"
x=
"317.2468"
y=
"-572.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
<text
text-anchor=
"start"
x=
"330.2468"
y=
"-572.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
 
read S
</text>
<text
text-anchor=
"start"
x=
"373.2468"
y=
"-572.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
</g>
<!-- Cgo_r_Sgo->Cgo -->
<g
id=
"edge24"
class=
"edge"
><title>
Cgo_r_Sgo
->
Cgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M370.985,-558.336C385.756,-547.785 405.207,-533.891 420.702,-522.824"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"422.746,-525.665 428.849,-517.005 418.677,-519.969 422.746,-525.665"
/>
<g
id=
"edge24"
class=
"edge"
>
<title>
Cgo_r_Sgo
->
Cgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M369.9715,-558.1574C384.4499,-547.5201 403.1256,-533.7992 418.1907,-522.7309"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"420.5981,-525.3054 426.5846,-516.564 416.4535,-519.6642 420.5981,-525.3054"
/>
</g>
<!-- Cgo_r_Sgo->Sgo -->
<g
id=
"edge25"
class=
"edge"
><title>
Cgo_r_Sgo
->
Sgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M349.789,-557.07C352.037,-520.052 357.362,-432.401 360.083,-387.607"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"363.587,-387.647 360.7,-377.453 356.6,-387.222 363.587,-387.647"
/>
<g
id=
"edge25"
class=
"edge"
>
<title>
Cgo_r_Sgo
->
Sgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M347.8328,-557.1758C350.0935,-519.6141 355.32,-432.7744 358.0369,-387.6307"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"361.5476,-387.5577 358.6548,-377.3654 354.5602,-387.1371 361.5476,-387.5577"
/>
</g>
<!-- Cgo_r_Spy -->
<g
id=
"node24"
class=
"node"
><title>
Cgo_r_Spy
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"489.747"
cy=
"-575.22"
rx=
"61.99"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"450.247"
y=
"-572.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
C
</text>
<text
text-anchor=
"start"
x=
"460.247"
y=
"-572.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
go
</text>
<text
text-anchor=
"start"
x=
"473.247"
y=
"-572.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
 
read S
</text>
<text
text-anchor=
"start"
x=
"516.247"
y=
"-572.52"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
>
py
</text>
<g
id=
"node24"
class=
"node"
>
<title>
Cgo_r_Spy
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"487.7468"
cy=
"-575.2203"
rx=
"61.99"
ry=
"18"
/>
<text
text-anchor=
"start"
x=
"448.2468"
y=
"-572.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
C
</text>
<text
text-anchor=
"start"
x=
"458.2468"
y=
"-572.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
go
</text>
<text
text-anchor=
"start"
x=
"471.2468"
y=
"-572.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
 
read S
</text>
<text
text-anchor=
"start"
x=
"514.2468"
y=
"-572.5203"
font-family=
"Times,serif"
baseline-shift=
"sub"
font-size=
"14.00"
fill=
"#000000"
>
py
</text>
</g>
<!-- Cgo_r_Spy->Cgo -->
<g
id=
"edge26"
class=
"edge"
><title>
Cgo_r_Spy
->
Cgo
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M479.338,-557.275C474.064,-548.69 467.564,-538.108 461.759,-528.659"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"464.687,-526.739 456.471,-520.05 458.723,-530.403 464.687,-526.739"
/>
<g
id=
"edge26"
class=
"edge"
>
<title>
Cgo_r_Spy
->
Cgo
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M477.1176,-557.4226C471.9912,-548.8389 465.7459,-538.3817 460.1135,-528.9506"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"463.09,-527.1084 454.9577,-520.3176 457.0802,-530.6976 463.09,-527.1084"
/>
</g>
<!-- Cleanup -->
<g
id=
"node25"
class=
"node"
><title>
Cleanup
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"636.747"
cy=
"-575.22"
rx=
"66.8882"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"636.747"
y=
"-571.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
Cleanup history
</text>
<g
id=
"node25"
class=
"node"
>
<title>
Cleanup
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"634.7468"
cy=
"-575.2203"
rx=
"66.8882"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"634.7468"
y=
"-571.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Cleanup history
</text>
</g>
<!-- Post -->
<g
id=
"node26"
class=
"node"
><title>
Post
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"748.747"
cy=
"-575.22"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"748.747"
y=
"-571.52"
font-family=
"Times,serif"
font-size=
"14.00"
>
Post
</text>
<g
id=
"node26"
class=
"node"
>
<title>
Post
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"746.7468"
cy=
"-575.2203"
rx=
"27"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"746.7468"
y=
"-571.5203"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Post
</text>
</g>
<!-- rtl_patch -->
<g
id=
"node31"
class=
"node"
><title>
rtl_patch
</title>
<ellipse
fill=
"lightyellow"
stroke=
"black"
cx=
"607.747"
cy=
"-26.8701"
rx=
"57.0522"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"607.747"
y=
"-30.6701"
font-family=
"Times,serif"
font-size=
"14.00"
>
r8169 patch
</text>
<text
text-anchor=
"middle"
x=
"607.747"
y=
"-15.6701"
font-family=
"Times,serif"
font-size=
"14.00"
>
ethtool
-
C
</text>
<g
id=
"node31"
class=
"node"
>
<title>
rtl_patch
</title>
<ellipse
fill=
"#ffffe0"
stroke=
"#000000"
cx=
"607.7468"
cy=
"-26.8701"
rx=
"57.0522"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"607.7468"
y=
"-30.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
r8169 patch
</text>
<text
text-anchor=
"middle"
x=
"607.7468"
y=
"-15.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ethtool
-
C
</text>
</g>
<!-- rx_no_delay->rtl_patch -->
<g
id=
"edge31"
class=
"edge"
><title>
rx_no_delay
->
rtl_patch
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M607.747,-89.2852C607.747,-81.3185 607.747,-72.4275 607.747,-63.9391"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"611.247,-63.874 607.747,-53.874 604.247,-63.8741 611.247,-63.874"
/>
<g
id=
"edge31"
class=
"edge"
>
<title>
rx_no_delay
->
rtl_patch
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M607.7468,-89.6852C607.7468,-81.6102 607.7468,-72.607 607.7468,-63.9961"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"611.2469,-63.776 607.7468,-53.776 604.2469,-63.7761 611.2469,-63.776"
/>
</g>
<!-- rtl_tcp_2eth -->
<g
id=
"node30"
class=
"node"
><title>
rtl_tcp_2eth
</title>
<ellipse
fill=
"oldlace"
stroke=
"black"
cx=
"839.747"
cy=
"-26.8701"
rx=
"102.561"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"839.747"
y=
"-30.6701"
font-family=
"Times,serif"
font-size=
"14.00"
>
RTL: TCP RR ↑ 400μs
</text>
<text
text-anchor=
"middle"
x=
"839.747"
y=
"-15.6701"
font-family=
"Times,serif"
font-size=
"14.00"
>
on 1 eth.f
->
2 eth.f
</text>
<g
id=
"node30"
class=
"node"
>
<title>
rtl_tcp_2eth
</title>
<ellipse
fill=
"#fdf5e6"
stroke=
"#000000"
cx=
"839.7468"
cy=
"-26.8701"
rx=
"102.561"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"839.7468"
y=
"-30.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
RTL: TCP RR ↑ 400μs
</text>
<text
text-anchor=
"middle"
x=
"839.7468"
y=
"-15.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
on 1 eth.f
->
2 eth.f
</text>
</g>
<!-- tcp_latency->rtl_tcp_2eth -->
<g
id=
"edge30"
class=
"edge"
><title>
tcp_latency
->
rtl_tcp_2eth
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M839.747,-89.2852C839.747,-81.3185 839.747,-72.4275 839.747,-63.9391"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"843.247,-63.874 839.747,-53.874 836.247,-63.8741 843.247,-63.874"
/>
<g
id=
"edge30"
class=
"edge"
>
<title>
tcp_latency
->
rtl_tcp_2eth
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M839.7468,-89.6852C839.7468,-81.6102 839.7468,-72.607 839.7468,-63.9961"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"843.2469,-63.776 839.7468,-53.776 836.2469,-63.7761 843.2469,-63.776"
/>
</g>
</g>
</svg>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment