| CPU | Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz |
|---|---|
| Cores | 8 physical / 16 logical · 3.6 GHz base · 5 GHz max |
| Memory | 62.6 GiB |
| GPU | CoffeeLake-S GT2 [UHD Graphics 630] i915 Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] (8.0 GiB) amdgpu |
| OS | Fedora Linux 43 (Workstation Edition) · 6.19.14-200.fc43.x86_64 · x64 |
| Node | v24.18.0 (v8 13.6.233.17-node.50) |
| Commit | dc6d3505 refactor(status): drop an unused parameter from the benchmark trend table |
| Machine id | 2d2ea233 |
| group | × @ N=500 | × @ N=2k |
|---|---|---|
| algo: bfs (whole graph) | 47× | 41× |
| algo: dfs (whole graph) | 49× | 46× |
| algo: dijkstra + pathTo | 41× | 43× |
| algo: aStar | 2.3× | 2.2× |
| algo: bellmanFord | 18× | 19× |
| algo: kruskal | 16× | 17× |
| algo: tarjan SCC | 23× | 25× |
| algo: hopcroft-tarjan biconnected | 24× | 24× |
| algo: hierholzer (directed) | 4.6× | 2.8× |
| algo: betweennessCentrality (unweighted) | 13× | 12× |
| algo: degreeCentralityNormalized | 22× | 23× |
| algo: closenessCentrality (one root) | 41× | 45× |
| algo: degreeCentrality (one root) | 0.11× | 0.03× |
| algo: pageRank (20 iters) | 1.83× | – |
| algo: closenessCentrality (weighted, one root) | 35× | – |
| algo: floydWarshall | 0.84× | – |
| algo: closenessCentralityNormalized | 0.86× | – |
| algo: markovClustering | 1.38× | – |
| algo: hierarchicalClustering (threshold) | 1.00× | – |
| algo: kMeans (fixed centroids) | 0.99× | – |
| algo: kMedoids | 1.02× | – |
| algo: fuzzyCMeans | 1.04× | – |
| algo: affinityPropagation | 1.84× | – |
| algo: kargerStein | 1.03× | – |
| algo: betweennessCentrality (weighted) | 9.1× | – |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| core: getElementById() | v3 | 83.1 ns | 85.9 ns | 137 ns | 78.2 ns | 1995 |
| core: getElementById() | gpu | 93.5 ns | 98.1 ns | 204 ns | 76.9 ns | 1740 |
| core: id lookup ($("#id") vs $id()) | v3 | 2.63 µs | 2.97 µs | 7.05 µs | 2.44 µs | 189744 |
| core: id lookup ($("#id") vs $id()) | gpu | 84.7 ns | 84.2 ns | 163 ns | 71.0 ns | 1982 |
| core: nodes() | v3 | 415 µs | 437 µs | 824 µs | 404 µs | 1594 |
| core: nodes() | gpu | 89.0 ns | 92.5 ns | 165 ns | 44.0 ns | 1922888 |
| core: edges() | v3 | 729 µs | 759 µs | 1.35 ms | 710 µs | 902 |
| core: edges() | gpu | 33.0 ns | 62.9 ns | 235 ns | 28.0 ns | 2191273 |
| core: elements() | v3 | 139 µs | 146 µs | 250 µs | 136 µs | 4772 |
| core: elements() | gpu | 8.49 ns | 9.46 ns | 17.9 ns | 7.94 ns | 17962 |
| core: nodes ($("node") vs filter({group})) | v3 | 545 µs | 601 µs | 1.20 ms | 528 µs | 1162 |
| core: nodes ($("node") vs filter({group})) | gpu | 77.9 µs | 77.2 µs | 176 µs | 52.9 µs | 8848 |
| core: selected ($(":selected") vs filter({selected})) | v3 | 354 µs | 375 µs | 714 µs | 340 µs | 1843 |
| core: selected ($(":selected") vs filter({selected})) | gpu | 25.2 µs | 25.7 µs | 26.3 µs | 24.4 µs | 12 |
| core: filter(fn) | v3 | 424 µs | 477 µs | 881 µs | 413 µs | 1465 |
| core: filter(fn) | gpu | 257 µs | 287 µs | 666 µs | 248 µs | 2420 |
| core: collection() | v3 | 461 ns | 562 ns | 1.71 µs | 451 ns | 294 |
| core: collection() | gpu | 54.8 ns | 60.4 ns | 145 ns | 52.6 ns | 2797 |
| core: pan() get | v3 | 6.31 ns | 6.96 ns | 14.0 ns | 6.20 ns | 24300 |
| core: pan() get | gpu | 6.57 ns | 7.26 ns | 13.5 ns | 6.22 ns | 23379 |
| core: extent() | v3 | 21.9 ns | 28.2 ns | 118 ns | 20.8 ns | 5964 |
| core: extent() | gpu | 21.7 ns | 29.0 ns | 90.0 ns | 20.7 ns | 5741 |
| core: add + remove | v3 | 122 µs | 128 µs | 264 µs | 112 µs | 5401 |
| core: add + remove | gpu | 7.37 µs | 8.55 µs | 20.5 µs | 6.90 µs | 74198 |
| core: zoom set | v3 | 1.23 µs | 1.25 µs | 1.46 µs | 1.16 µs | 132 |
| core: zoom set | gpu | 662 ns | 719 ns | 1.28 µs | 642 ns | 223 |
| traverse: neighborhood() | v3 | 3.70 µs | 4.03 µs | 5.11 µs | 3.42 µs | 37 |
| traverse: neighborhood() | gpu | 862 ns | 985 ns | 2.10 µs | 826 ns | 166 |
| traverse: connectedEdges() | v3 | 1.01 µs | 1.10 µs | 2.19 µs | 971 ns | 147 |
| traverse: connectedEdges() | gpu | 471 ns | 563 ns | 1.90 µs | 459 ns | 288 |
| traverse: outgoers() | v3 | 2.30 µs | 2.50 µs | 3.25 µs | 2.23 µs | 62 |
| traverse: outgoers() | gpu | 432 ns | 519 ns | 2.03 µs | 422 ns | 312 |
| traverse: incomers() | v3 | 2.31 µs | 2.50 µs | 3.36 µs | 2.22 µs | 62 |
| traverse: incomers() | gpu | 438 ns | 524 ns | 2.05 µs | 427 ns | 304 |
| traverse: components() | v3 | 78.9 ms | 82.3 ms | 91.7 ms | 74.8 ms | 12 |
| traverse: components() | gpu | 2.03 ms | 2.21 ms | 3.66 ms | 1.95 ms | 300 |
| degree: node.degree() | v3 | 3.50 µs | 3.70 µs | 4.69 µs | 3.21 µs | 42 |
| degree: node.degree() | gpu | 25.0 ns | 25.9 ns | 45.6 ns | 24.2 ns | 6234 |
| degree: nodes.totalDegree() | v3 | 7.46 ms | 8.17 ms | 12.3 ms | 6.90 ms | 81 |
| degree: nodes.totalDegree() | gpu | 38.0 µs | 38.9 µs | 67.5 µs | 36.6 µs | 17008 |
| degree: nodes.maxDegree() | v3 | 7.82 ms | 8.59 ms | 13.0 ms | 6.94 ms | 77 |
| degree: nodes.maxDegree() | gpu | 52.0 µs | 53.3 µs | 76.1 µs | 50.2 µs | 13133 |
| data: get | v3 | 25.8 ns | 27.4 ns | 66.6 ns | 24.3 ns | 6237 |
| data: get | gpu | 24.8 ns | 26.4 ns | 50.8 ns | 24.0 ns | 6455 |
| position: get | v3 | 23.8 ns | 25.2 ns | 44.3 ns | 23.2 ns | 6763 |
| position: get | gpu | 32.0 ns | 35.6 ns | 70.8 ns | 29.7 ns | 4716 |
| json: element | v3 | 292 ns | 387 ns | 3.57 µs | 285 ns | 424 |
| json: element | gpu | 342 ns | 386 ns | 861 ns | 334 ns | 414 |
| set: union() | v3 | 94.3 µs | 106 µs | 186 µs | 89.2 µs | 6428 |
| set: union() | gpu | 16.6 µs | 17.2 µs | 17.6 µs | 16.1 µs | 12 |
| set: intersection() | v3 | 88.5 µs | 98.1 µs | 148 µs | 86.9 µs | 7064 |
| set: intersection() | gpu | 3.27 µs | 3.34 µs | 3.95 µs | 3.22 µs | 46 |
| set: difference() | v3 | 90.8 µs | 104 µs | 162 µs | 87.7 µs | 6634 |
| set: difference() | gpu | 3.23 µs | 3.25 µs | 3.49 µs | 3.15 µs | 47 |
| iter: map() | v3 | 26.3 µs | 27.8 µs | 50.9 µs | 25.2 µs | 24393 |
| iter: map() | gpu | 10.2 µs | 10.3 µs | 10.7 µs | 10.0 µs | 13 |
| iter: forEach() | v3 | 3.49 µs | 3.72 µs | 3.74 µs | 3.44 µs | 36 |
| iter: forEach() | gpu | 3.44 µs | 3.50 µs | 3.68 µs | 3.41 µs | 43 |
| iter: filter(fn) | v3 | 224 µs | 234 µs | 295 µs | 220 µs | 2973 |
| iter: filter(fn) | gpu | 99.9 µs | 103 µs | 151 µs | 98.4 µs | 6791 |
| compare: same() | v3 | 114 µs | 116 µs | 157 µs | 108 µs | 6042 |
| compare: same() | gpu | 12.0 ns | 12.7 ns | 24.5 ns | 11.4 ns | 13441 |
| compare: contains() | v3 | 6.11 µs | 6.28 µs | 10.7 µs | 5.64 µs | 106821 |
| compare: contains() | gpu | 1.25 µs | 1.26 µs | 1.45 µs | 1.21 µs | 128 |
| mut: data set | v3 | 479 ns | 495 ns | 664 ns | 464 ns | 338 |
| mut: data set | gpu | 744 ns | 761 ns | 1.10 µs | 715 ns | 217 |
| mut: position set | v3 | 1.20 µs | 1.22 µs | 1.41 µs | 1.16 µs | 135 |
| mut: position set | gpu | 59.0 ns | 62.7 ns | 107 ns | 57.1 ns | 2688 |
| mut: select + unselect | v3 | 2.46 µs | 2.65 µs | 3.41 µs | 2.38 µs | 60 |
| mut: select + unselect | gpu | 106 ns | 113 ns | 210 ns | 102 ns | 1501 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| sweep: nodes() | v3 | 421 µs | 434 µs | 676 µs | 409 µs | 1614 |
| sweep: nodes() | gpu | 30.0 ns | 31.5 ns | 50.0 ns | 27.0 ns | 1938679 |
| sweep: edges() | v3 | 729 µs | 735 µs | 870 µs | 691 µs | 949 |
| sweep: edges() | gpu | 95.0 ns | 96.7 ns | 101 ns | 47.0 ns | 1996569 |
| sweep: elements() | v3 | 141 µs | 146 µs | 209 µs | 131 µs | 4789 |
| sweep: elements() | gpu | 95.0 ns | 98.0 ns | 163 ns | 42.0 ns | 1940217 |
| sweep: all nodes ($("node") vs filter({group})) | v3 | 543 µs | 580 µs | 1.07 ms | 536 µs | 1201 |
| sweep: all nodes ($("node") vs filter({group})) | gpu | 83.2 µs | 79.3 µs | 181 µs | 57.8 µs | 8733 |
| sweep: selected ($(":selected") vs filter({selected})) | v3 | 340 µs | 347 µs | 491 µs | 330 µs | 2008 |
| sweep: selected ($(":selected") vs filter({selected})) | gpu | 25.2 µs | 25.9 µs | 26.6 µs | 24.9 µs | 12 |
| sweep: selected nodes ($("node:selected") vs filter({group, selected})) | v3 | 325 µs | 332 µs | 506 µs | 315 µs | 2110 |
| sweep: selected nodes ($("node:selected") vs filter({group, selected})) | gpu | 8.71 µs | 8.82 µs | 9.06 µs | 8.64 µs | 16 |
| sweep: nodes(":selected") vs nodes({selected}) | v3 | 527 µs | 542 µs | 827 µs | 511 µs | 1292 |
| sweep: nodes(":selected") vs nodes({selected}) | gpu | 8.65 µs | 8.70 µs | 8.88 µs | 8.59 µs | 16 |
| sweep: filter(fn) | v3 | 415 µs | 421 µs | 512 µs | 404 µs | 1660 |
| sweep: filter(fn) | gpu | 263 µs | 281 µs | 578 µs | 255 µs | 2471 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| mut-bulk: select + unselect | v3 | 1.81 ms | 1.86 ms | 3.12 ms | 1.76 ms | 359 |
| mut-bulk: select + unselect | gpu | 47.9 µs | 49.5 µs | 85.0 µs | 44.7 µs | 14074 |
| mut-bulk: hide + show | v3 | 59.7 ms | 65.1 ms | 69.6 ms | 57.4 ms | 12 |
| mut-bulk: hide + show | gpu | 223 µs | 229 µs | 352 µs | 217 µs | 2939 |
| mut-bulk: lock + unlock | v3 | 2.21 ms | 2.27 ms | 3.47 ms | 2.16 ms | 304 |
| mut-bulk: lock + unlock | gpu | 29.8 µs | 31.3 µs | 35.0 µs | 29.5 µs | 12 |
| mut-bulk: positions(obj) | v3 | 2.27 ms | 2.33 ms | 3.68 ms | 2.23 ms | 294 |
| mut-bulk: positions(obj) | gpu | 18.0 µs | 19.3 µs | 40.2 µs | 16.4 µs | 35740 |
| mut-bulk: positions(fn) | v3 | 3.43 ms | 3.63 ms | 5.73 ms | 3.38 ms | 188 |
| mut-bulk: positions(fn) | gpu | 34.7 µs | 36.6 µs | 85.1 µs | 33.1 µs | 18482 |
| mut-bulk: shift | v3 | 3.56 ms | 3.71 ms | 5.03 ms | 3.48 ms | 181 |
| mut-bulk: shift | gpu | 30.1 µs | 32.5 µs | 63.7 µs | 28.6 µs | 21303 |
| mut-bulk: data set | v3 | 921 µs | 953 µs | 1.63 ms | 903 µs | 725 |
| mut-bulk: data set | gpu | 60.4 µs | 64.5 µs | 149 µs | 57.5 µs | 10739 |
| mut-bulk: remove + re-add (256 nodes + cascade) | v3 | 40.8 ms | 43.8 ms | 53.5 ms | 39.1 ms | 12 |
| mut-bulk: remove + re-add (256 nodes + cascade) | gpu | 6.94 ms | 7.06 ms | 8.38 ms | 6.27 ms | 93 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| scn: explore (expand 2-hop + select + fit) | v3 | 296 µs | 345 µs | 953 µs | 272 µs | 2010 |
| scn: explore (expand 2-hop + select + fit) | gpu | 25.3 µs | 28.6 µs | 95.7 µs | 22.5 µs | 23685 |
| scn: select-all + fit (listeners on) | v3 | 24.1 ms | 24.3 ms | 25.9 ms | 23.1 ms | 24 |
| scn: select-all + fit (listeners on) | gpu | 695 µs | 757 µs | 1.36 ms | 662 µs | 913 |
| scn: drag (select band of 100 + 8-step shift, position listener) | v3 | 1.66 ms | 1.69 ms | 2.18 ms | 1.65 ms | 395 |
| scn: drag (select band of 100 + 8-step shift, position listener) | gpu | 91.2 µs | 93.0 µs | 136 µs | 88.3 µs | 7204 |
| scn: edit (remove + re-add 256 nodes + cascade, add/remove listeners) | v3 | 43.7 ms | 44.0 ms | 45.5 ms | 42.1 ms | 12 |
| scn: edit (remove + re-add 256 nodes + cascade, add/remove listeners) | gpu | 7.26 ms | 7.57 ms | 11.8 ms | 6.55 ms | 86 |
| scn: refresh (bulk data write + mapped labels + filter + fit, data listener) | v3 | 7.55 ms | 8.10 ms | 12.9 ms | 7.03 ms | 81 |
| scn: refresh (bulk data write + mapped labels + filter + fit, data listener) | gpu | 4.17 ms | 4.28 ms | 7.34 ms | 3.66 ms | 150 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| trav: neighborhood() | v3 | 3.84 µs | 4.03 µs | 5.21 µs | 3.38 µs | 39 |
| trav: neighborhood() | gpu | 941 ns | 987 ns | 1.97 µs | 785 ns | 167 |
| trav: closedNeighborhood() | v3 | 5.70 µs | 5.78 µs | 6.88 µs | 5.25 µs | 26 |
| trav: closedNeighborhood() | gpu | 2.07 µs | 2.25 µs | 2.91 µs | 2.01 µs | 71 |
| trav: connectedEdges() | v3 | 1.03 µs | 1.11 µs | 1.87 µs | 1.01 µs | 150 |
| trav: connectedEdges() | gpu | 438 ns | 447 ns | 706 ns | 427 ns | 370 |
| trav: outgoers() | v3 | 2.28 µs | 2.42 µs | 2.98 µs | 2.20 µs | 64 |
| trav: outgoers() | gpu | 416 ns | 499 ns | 2.00 µs | 407 ns | 333 |
| trav: incomers() | v3 | 2.32 µs | 2.45 µs | 3.00 µs | 2.25 µs | 65 |
| trav: incomers() | gpu | 427 ns | 509 ns | 2.02 µs | 420 ns | 324 |
| trav: successors() | v3 | 433 ms | 434 ms | 438 ms | 426 ms | 12 |
| trav: successors() | gpu | 545 µs | 576 µs | 1.79 ms | 531 µs | 1181 |
| trav: predecessors() | v3 | 425 ms | 429 ms | 441 ms | 419 ms | 12 |
| trav: predecessors() | gpu | 571 µs | 604 µs | 1.74 ms | 549 µs | 1144 |
| trav: band neighborhood() | v3 | 186 µs | 197 µs | 294 µs | 179 µs | 3532 |
| trav: band neighborhood() | gpu | 35.6 µs | 37.7 µs | 67.7 µs | 34.3 µs | 18339 |
| trav: band connectedEdges() | v3 | 24.5 µs | 24.8 µs | 25.2 µs | 24.1 µs | 12 |
| trav: band connectedEdges() | gpu | 28.6 µs | 29.6 µs | 32.0 µs | 28.4 µs | 12 |
| trav: band roots() | v3 | 109 µs | 117 µs | 155 µs | 105 µs | 5938 |
| trav: band roots() | gpu | 4.84 µs | 4.83 µs | 5.00 µs | 4.70 µs | 31 |
| trav: band sources() | v3 | 7.19 µs | 7.21 µs | 7.42 µs | 6.94 µs | 20 |
| trav: band sources() | gpu | 4.49 µs | 4.75 µs | 5.47 µs | 4.32 µs | 32 |
| trav: band connectedNodes() | v3 | 14.0 µs | 14.4 µs | 14.2 µs | 13.6 µs | 12 |
| trav: band connectedNodes() | gpu | 5.03 µs | 5.25 µs | 5.86 µs | 4.88 µs | 29 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| algo: bfs (whole graph) | v3 | 49.1 ms | 51.8 ms | 58.0 ms | 48.3 ms | 10 |
| algo: bfs (whole graph) | gpu | 1.20 ms | 1.24 ms | 1.69 ms | 1.17 ms | 547 |
| algo: dfs (whole graph) | v3 | 48.6 ms | 48.9 ms | 49.4 ms | 48.0 ms | 11 |
| algo: dfs (whole graph) | gpu | 1.06 ms | 1.08 ms | 1.42 ms | 1.03 ms | 636 |
| algo: dijkstra + pathTo | v3 | 51.6 ms | 51.8 ms | 52.7 ms | 50.4 ms | 10 |
| algo: dijkstra + pathTo | gpu | 1.21 ms | 1.23 ms | 1.61 ms | 1.18 ms | 563 |
| algo: aStar | v3 | 1.73 ms | 1.77 ms | 2.60 ms | 1.64 ms | 391 |
| algo: aStar | gpu | 784 µs | 800 µs | 1.31 ms | 757 µs | 871 |
| algo: bellmanFord | v3 | 232 ms | 230 ms | 248 ms | 207 ms | 12 |
| algo: bellmanFord | gpu | 11.9 ms | 12.5 ms | 16.3 ms | 11.8 ms | 50 |
| algo: kruskal | v3 | 12.9 ms | 13.8 ms | 17.9 ms | 12.3 ms | 46 |
| algo: kruskal | gpu | 766 µs | 787 µs | 1.19 ms | 710 µs | 871 |
| algo: tarjan SCC | v3 | 22.5 ms | 23.3 ms | 26.1 ms | 21.2 ms | 26 |
| algo: tarjan SCC | gpu | 911 µs | 962 µs | 1.49 ms | 881 µs | 713 |
| algo: hopcroft-tarjan biconnected | v3 | 86.8 ms | 88.9 ms | 101 ms | 82.8 ms | 12 |
| algo: hopcroft-tarjan biconnected | gpu | 3.69 ms | 3.83 ms | 5.03 ms | 3.60 ms | 172 |
| algo: hierholzer (directed) | v3 | 24.3 ms | 24.5 ms | 27.5 ms | 21.9 ms | 25 |
| algo: hierholzer (directed) | gpu | 8.65 ms | 8.75 ms | 10.7 ms | 8.15 ms | 75 |
| algo: betweennessCentrality (unweighted) | v3 | 4.00 s | 4.00 s | 4.03 s | 3.96 s | 12 |
| algo: betweennessCentrality (unweighted) | gpu | 343 ms | 366 ms | 429 ms | 333 ms | 12 |
| algo: degreeCentralityNormalized | v3 | 15.1 ms | 15.9 ms | 19.0 ms | 14.1 ms | 40 |
| algo: degreeCentralityNormalized | gpu | 659 µs | 681 µs | 1.00 ms | 650 µs | 1022 |
| algo: closenessCentrality (one root) | v3 | 59.8 ms | 62.9 ms | 68.4 ms | 58.5 ms | 12 |
| algo: closenessCentrality (one root) | gpu | 1.33 ms | 1.38 ms | 1.77 ms | 1.32 ms | 503 |
| algo: degreeCentrality (one root) | v3 | 6.95 µs | 7.61 µs | 9.89 µs | 6.63 µs | 87041 |
| algo: degreeCentrality (one root) | gpu | 262 µs | 270 µs | 524 µs | 255 µs | 2586 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| algo: bfs (whole graph) | v3 | 12.9 ms | 13.3 ms | 17.1 ms | 10.9 ms | 48 |
| algo: bfs (whole graph) | gpu | 276 µs | 285 µs | 491 µs | 255 µs | 2448 |
| algo: dfs (whole graph) | v3 | 12.7 ms | 13.4 ms | 23.8 ms | 10.9 ms | 48 |
| algo: dfs (whole graph) | gpu | 258 µs | 267 µs | 458 µs | 252 µs | 2614 |
| algo: dijkstra + pathTo | v3 | 11.7 ms | 12.6 ms | 15.3 ms | 11.2 ms | 51 |
| algo: dijkstra + pathTo | gpu | 288 µs | 297 µs | 493 µs | 275 µs | 2349 |
| algo: aStar | v3 | 428 µs | 439 µs | 648 µs | 420 µs | 1593 |
| algo: aStar | gpu | 187 µs | 192 µs | 253 µs | 181 µs | 3652 |
| algo: bellmanFord | v3 | 16.0 ms | 16.1 ms | 17.1 ms | 15.4 ms | 40 |
| algo: bellmanFord | gpu | 873 µs | 902 µs | 1.97 ms | 849 µs | 763 |
| algo: kruskal | v3 | 3.12 ms | 3.45 ms | 7.21 ms | 3.05 ms | 199 |
| algo: kruskal | gpu | 189 µs | 199 µs | 324 µs | 183 µs | 3477 |
| algo: tarjan SCC | v3 | 5.34 ms | 5.71 ms | 8.87 ms | 5.18 ms | 117 |
| algo: tarjan SCC | gpu | 229 µs | 273 µs | 544 µs | 219 µs | 2496 |
| algo: hopcroft-tarjan biconnected | v3 | 20.9 ms | 20.9 ms | 23.3 ms | 18.6 ms | 30 |
| algo: hopcroft-tarjan biconnected | gpu | 858 µs | 886 µs | 1.25 ms | 839 µs | 785 |
| algo: hierholzer (directed) | v3 | 4.13 ms | 4.39 ms | 7.28 ms | 4.02 ms | 152 |
| algo: hierholzer (directed) | gpu | 896 µs | 920 µs | 1.31 ms | 884 µs | 749 |
| algo: betweennessCentrality (unweighted) | v3 | 252 ms | 253 ms | 257 ms | 248 ms | 12 |
| algo: betweennessCentrality (unweighted) | gpu | 19.9 ms | 20.3 ms | 22.2 ms | 19.4 ms | 30 |
| algo: degreeCentralityNormalized | v3 | 3.41 ms | 3.67 ms | 7.10 ms | 3.33 ms | 186 |
| algo: degreeCentralityNormalized | gpu | 158 µs | 163 µs | 227 µs | 153 µs | 4278 |
| algo: closenessCentrality (one root) | v3 | 13.3 ms | 14.2 ms | 16.8 ms | 12.8 ms | 45 |
| algo: closenessCentrality (one root) | gpu | 327 µs | 340 µs | 592 µs | 316 µs | 2055 |
| algo: degreeCentrality (one root) | v3 | 7.06 µs | 7.75 µs | 15.8 µs | 6.65 µs | 84732 |
| algo: degreeCentrality (one root) | gpu | 64.9 µs | 65.3 µs | 66.1 µs | 63.9 µs | 12 |
| algo: pageRank (20 iters) | v3 | 2.80 ms | 2.99 ms | 6.24 ms | 2.76 ms | 222 |
| algo: pageRank (20 iters) | gpu | 1.53 ms | 1.78 ms | 4.09 ms | 1.51 ms | 380 |
| algo: closenessCentrality (weighted, one root) | v3 | 13.5 ms | 14.3 ms | 17.1 ms | 13.1 ms | 45 |
| algo: closenessCentrality (weighted, one root) | gpu | 380 µs | 389 µs | 588 µs | 371 µs | 1765 |
| algo: floydWarshall | v3 | 248 ms | 268 ms | 294 ms | 244 ms | 12 |
| algo: floydWarshall | gpu | 295 ms | 297 ms | 301 ms | 293 ms | 12 |
| algo: closenessCentralityNormalized | v3 | 276 ms | 296 ms | 419 ms | 237 ms | 12 |
| algo: closenessCentralityNormalized | gpu | 320 ms | 322 ms | 327 ms | 317 ms | 12 |
| algo: markovClustering | v3 | 4.65 s | 4.67 s | 4.72 s | 4.62 s | 12 |
| algo: markovClustering | gpu | 3.37 s | 3.56 s | 3.86 s | 3.32 s | 12 |
| algo: hierarchicalClustering (threshold) | v3 | 27.9 ms | 27.8 ms | 28.7 ms | 26.5 ms | 22 |
| algo: hierarchicalClustering (threshold) | gpu | 27.9 ms | 27.9 ms | 29.0 ms | 26.6 ms | 21 |
| algo: kMeans (fixed centroids) | v3 | 8.52 ms | 8.63 ms | 9.54 ms | 8.32 ms | 77 |
| algo: kMeans (fixed centroids) | gpu | 8.56 ms | 8.79 ms | 11.9 ms | 8.33 ms | 75 |
| algo: kMedoids | v3 | 367 ms | 307 ms | 389 ms | 140 ms | 12 |
| algo: kMedoids | gpu | 359 ms | 342 ms | 403 ms | 75.4 ms | 12 |
| algo: fuzzyCMeans | v3 | 80.3 ms | 82.4 ms | 85.3 ms | 78.8 ms | 12 |
| algo: fuzzyCMeans | gpu | 76.9 ms | 78.3 ms | 80.6 ms | 75.5 ms | 12 |
| algo: affinityPropagation | v3 | 215 ms | 230 ms | 287 ms | 206 ms | 12 |
| algo: affinityPropagation | gpu | 117 ms | 133 ms | 190 ms | 113 ms | 12 |
| algo: kargerStein | v3 | 325 ms | 332 ms | 343 ms | 320 ms | 12 |
| algo: kargerStein | gpu | 314 ms | 316 ms | 321 ms | 306 ms | 12 |
| algo: betweennessCentrality (weighted) | v3 | 757 ms | 766 ms | 782 ms | 752 ms | 12 |
| algo: betweennessCentrality (weighted) | gpu | 83.1 ms | 85.1 ms | 89.0 ms | 78.7 ms | 12 |
| group | bench | p50 | avg | p99 | min | samples |
|---|---|---|---|---|---|---|
| mapper: bulk write, color | cpu eval | 3.73 ms | 3.96 ms | 6.85 ms | 3.59 ms | 170 |
| mapper: bulk write, color | gpu path | 180 µs | 188 µs | 330 µs | 176 µs | 3730 |
| mapper: bulk write, color + size | cpu eval | 4.06 ms | 4.19 ms | 5.32 ms | 3.93 ms | 161 |
| mapper: bulk write, color + size | gpu color / cpu size | 3.69 ms | 3.79 ms | 5.42 ms | 3.57 ms | 181 |
| mapper: bulk write, mapped labels (round-5 path) | label refresh | 3.98 ms | 4.31 ms | 7.74 ms | 3.47 ms | 156 |