java-topology/whitepaper/gumyum/dots/benchmax.dot
russell@unturf.com db29a08762 undefect. CWE-407 — 92 sites, 42 ecosystems
B&W print-friendly diagrams + tinkerpop-0001 + wave-3 proof sections.
Squash of 94 local commits onto remote master.
2026-03-26 19:48:18 -04:00

83 lines
2.7 KiB
Text

digraph benchmax {
graph [
bgcolor="white"
fontname="Helvetica"
fontsize=10
rankdir=LR
pad=0.3
splines=curved
nodesep=0.5
ranksep=0.8
label="BenchMax — Scaling Curves at Extremes"
labelloc=t
labeljust=l
fontsize=11
fontcolor="black"
]
node [
fontname="Helvetica"
fontsize=8
style=filled
fillcolor="white"
color="black"
penwidth=0.8
margin="0.14,0.06"
]
edge [
color="black"
penwidth=0.6
arrowsize=0.4
fontname="Helvetica"
fontsize=7
fontcolor="black"
]
// javac Tarjan — circle size encodes speedup
subgraph cluster_javac {
label="javac Tarjan starWithBackEdges(V)"
fontsize=9
color="black"
penwidth=0.8
jv200 [label="V=200\n2.87x" shape=circle fixedsize=true width=0.55]
jv400 [label="V=400\n3.87x" shape=circle fixedsize=true width=0.65]
jv800 [label="V=800\n5.47x" shape=circle fixedsize=true width=0.80]
jv2000 [label="V=2000\n~12x" shape=circle fixedsize=true width=1.0]
jv5000 [label="V=5000\n~30x" shape=circle fixedsize=true width=1.3]
jv200 -> jv400 -> jv800 -> jv2000 -> jv5000
}
// Minecraft DependencySorter — circle size encodes speedup, thick border = EXPONENTIAL
subgraph cluster_mc {
label="minecraft-0001 diamond depth D"
fontsize=9
color="black"
penwidth=1.5
style=dashed
md8 [label="D=8\n4x" shape=circle fixedsize=true width=0.55]
md10 [label="D=10\n11.7x" shape=circle fixedsize=true width=0.75]
md12 [label="D=12\n31.5x" shape=circle fixedsize=true width=1.0]
md14 [label="D=14\n88x" shape=circle fixedsize=true width=1.4 penwidth=2.0]
md16 [label="D=16\nOVERFLOW" shape=circle fixedsize=true width=1.8 penwidth=2.5 style="filled,dashed"]
md8 -> md10 -> md12 -> md14 -> md16 [penwidth=1.5]
}
// Create TrackGraph — circle size encodes speedup
subgraph cluster_create {
label="create-0001 TrackGraph BFS ArrayList.remove(0)"
fontsize=9
color="black"
penwidth=0.8
cv100 [label="V=100\n~1.5x" shape=circle fixedsize=true width=0.5]
cv500 [label="V=500\n~6x" shape=circle fixedsize=true width=0.7]
cv2000 [label="V=2000\n~25x" shape=circle fixedsize=true width=1.1]
cv5000 [label="V=5000\n~60x" shape=circle fixedsize=true width=1.5]
cv100 -> cv500 -> cv2000 -> cv5000
}
// Cross arrows showing relationship
jv800 -> md12 [style=invis]
md12 -> cv2000 [style=invis]
}