Skip to content

Optimisations for node validity and neighbour filtering#2586

Open
ljeub-pometry wants to merge 32 commits intodb_v4from
optimise_node_valid
Open

Optimisations for node validity and neighbour filtering#2586
ljeub-pometry wants to merge 32 commits intodb_v4from
optimise_node_valid

Conversation

@ljeub-pometry
Copy link
Copy Markdown
Collaborator

What changes were proposed in this pull request?

Improve the implementations of node_valid and use src/dst from edge ref for filtering when available

Why are the changes needed?

Performance

Does this PR introduce any user-facing change? If yes is this documented?

No

Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Rust Benchmark'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 2.

Benchmark suite Current: a21d6a6 Previous: 9823ef7 Ratio
lotr_graph/num_edges 4 ns/iter (± 0) 0 ns/iter (± 0) +∞
lotr_graph/num_nodes 132 ns/iter (± 31) 1 ns/iter (± 0) 132
lotr_graph/has_node_nonexisting 5 ns/iter (± 0) 2 ns/iter (± 0) 2.50
lotr_graph/graph_latest 3 ns/iter (± 0) 0 ns/iter (± 0) +∞
lotr_graph_window_100/num_edges 29 ns/iter (± 0) 8 ns/iter (± 0) 3.63
lotr_graph_window_100/num_nodes 145 ns/iter (± 33) 5 ns/iter (± 0) 29
lotr_graph_window_100/has_node_existing 45 ns/iter (± 0) 22 ns/iter (± 0) 2.05
lotr_graph_window_100_materialise/materialize 3427278 ns/iter (± 22305) 1669150 ns/iter (± 10700) 2.05
lotr_graph_window_10/num_edges_temporal 73418 ns/iter (± 3599) 35565 ns/iter (± 681) 2.06
lotr_graph_window_10/has_edge_existing 244 ns/iter (± 12) 97 ns/iter (± 11) 2.52
lotr_graph_window_10/has_node_existing 168 ns/iter (± 7) 62 ns/iter (± 11) 2.71
lotr_graph_window_10/iterate nodes 38586 ns/iter (± 74) 11339 ns/iter (± 40) 3.40
lotr_graph_window_10/iterate edges 139885 ns/iter (± 1410) 48684 ns/iter (± 211) 2.87
lotr_graph_window_10/iterate_exploded_edges 318118 ns/iter (± 2589) 155788 ns/iter (± 1001) 2.04
lotr_graph_window_10/max_neighbour_degree 143186 ns/iter (± 378) 71323 ns/iter (± 185) 2.01
lotr_graph_window_10_materialise/materialize 2142468 ns/iter (± 15657) 971980 ns/iter (± 4278) 2.20
lotr_graph_subgraph_10pc/has_edge_existing 246 ns/iter (± 9) 93 ns/iter (± 1) 2.65
lotr_graph_subgraph_10pc/num_nodes 128 ns/iter (± 26) 4 ns/iter (± 0) 32
lotr_graph_subgraph_10pc/has_node_existing 110 ns/iter (± 3) 34 ns/iter (± 0) 3.24
lotr_graph_subgraph_10pc/has_node_nonexisting 5 ns/iter (± 0) 2 ns/iter (± 0) 2.50
lotr_graph_subgraph_10pc/iterate nodes 2451 ns/iter (± 79) 839 ns/iter (± 5) 2.92
lotr_graph_subgraph_10pc_windowed/has_edge_existing 268 ns/iter (± 12) 132 ns/iter (± 6) 2.03
lotr_graph_subgraph_10pc_windowed/has_node_existing 152 ns/iter (± 6) 62 ns/iter (± 14) 2.45
lotr_graph_subgraph_10pc_windowed/iterate nodes 5141 ns/iter (± 83) 1365 ns/iter (± 3) 3.77
lotr_graph_window_50_layered/num_edges 100509 ns/iter (± 2435) 38714 ns/iter (± 1017) 2.60
lotr_graph_window_50_layered/num_edges_temporal 195805 ns/iter (± 3047) 70121 ns/iter (± 7586) 2.79
lotr_graph_window_50_layered/has_edge_existing 232 ns/iter (± 12) 104 ns/iter (± 7) 2.23
lotr_graph_window_50_layered/active edge 1002 ns/iter (± 59) 490 ns/iter (± 58) 2.04
lotr_graph_window_50_layered/num_nodes 65022 ns/iter (± 940) 21435 ns/iter (± 536) 3.03
lotr_graph_window_50_layered/has_node_existing 1053 ns/iter (± 94) 129 ns/iter (± 12) 8.16
lotr_graph_window_50_layered/has_node_nonexisting 5 ns/iter (± 0) 2 ns/iter (± 0) 2.50
lotr_graph_window_50_layered/max_id 70945 ns/iter (± 4419) 25556 ns/iter (± 252) 2.78
lotr_graph_window_50_layered/max_degree 599238 ns/iter (± 4772) 291706 ns/iter (± 10074) 2.05
lotr_graph_window_50_layered/iterate nodes 144577 ns/iter (± 441) 19308 ns/iter (± 47) 7.49
lotr_graph_window_50_layered/iterate edges 278663 ns/iter (± 4032) 83616 ns/iter (± 1318) 3.33
lotr_graph_window_50_layered/max_neighbour_degree 894654 ns/iter (± 3976) 386651 ns/iter (± 3853) 2.31
lotr_graph_window_50_layered/graph_latest 109929 ns/iter (± 1701) 36649 ns/iter (± 916) 3.00
lotr_graph_window_50_layered_materialise/materialize 7692908 ns/iter (± 66700) 3488825 ns/iter (± 24948) 2.21
lotr_graph_persistent_window_50_layered/num_edges 76485 ns/iter (± 1902) 34996 ns/iter (± 2399) 2.19
lotr_graph_persistent_window_50_layered/num_edges_temporal 795206 ns/iter (± 5939) 192686 ns/iter (± 1569) 4.13
lotr_graph_persistent_window_50_layered/has_edge_existing 255 ns/iter (± 122) 109 ns/iter (± 23) 2.34
lotr_graph_persistent_window_50_layered/active edge 1074 ns/iter (± 677) 505 ns/iter (± 98) 2.13
lotr_graph_persistent_window_50_layered/num_nodes 85186 ns/iter (± 1567) 31517 ns/iter (± 779) 2.70
lotr_graph_persistent_window_50_layered/has_node_existing 1266 ns/iter (± 219) 174 ns/iter (± 83) 7.28
lotr_graph_persistent_window_50_layered/has_node_nonexisting 5 ns/iter (± 0) 2 ns/iter (± 0) 2.50
lotr_graph_persistent_window_50_layered/max_id 93457 ns/iter (± 1125) 38024 ns/iter (± 490) 2.46
lotr_graph_persistent_window_50_layered/iterate nodes 195658 ns/iter (± 527) 35886 ns/iter (± 191) 5.45
lotr_graph_persistent_window_50_layered/iterate edges 232429 ns/iter (± 3142) 84161 ns/iter (± 596) 2.76
lotr_graph_persistent_window_50_layered/iterate_exploded_edges 3758878 ns/iter (± 8297) 1659940 ns/iter (± 19402) 2.26
lotr_graph_persistent_window_50_layered/graph_latest 170100 ns/iter (± 10890) 57549 ns/iter (± 4809) 2.96
lotr_graph_persistent_window_50_layered_materialise/materialize 13802659 ns/iter (± 87045) 5298035 ns/iter (± 147912) 2.61
lotr_graph/proto_encode 6097271 ns/iter (± 211451) 1157897 ns/iter (± 73709) 5.27

This comment was automatically generated by workflow using github-action-benchmark.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants