-
Notifications
You must be signed in to change notification settings - Fork 631
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
use the mock_node framework in a benchmark #6778
Conversation
@mzhangmzz @mm-near ok, removed the draft status. PTAL! |
Hm, this PR added 25mb binary blob to the shared git repository. This is less than ideal, as git is pretty bad at dealing with large files, in a sense that now everyone needs to download extra 25 mbs when cloning the repo. This seems like a rather large cost, considering we have to pay it indefinitelly (even if we remove the file, it'll still be in the history). I suggest begin more careful with large files in the future. Perhaps we should add a CI check that there isn't anything lanrger than 0.5 meg in the repo? |
Ah true :(. Yeah I think a check like that is a good idea |
This was added in near#6778, but it's honestly really not needed. There's been some discussion that it's easier to just run mock-node directly, and that the benchmarks don't add a ton of value. Also it's not great to have added binary files to the tree.
This was added in #6778, but it's honestly really not needed. There's been some discussion that it's easier to just run mock-node directly, and that the benchmarks don't add a ton of value. Also it's not great to have added binary files to the tree.
This was added in #6778, but it's honestly really not needed. There's been some discussion that it's easier to just run mock-node directly, and that the benchmarks don't add a ton of value. Also it's not great to have added binary files to the tree.
This was added in #6778, but it's honestly really not needed. There's been some discussion that it's easier to just run mock-node directly, and that the benchmarks don't add a ton of value. Also it's not great to have added binary files to the tree.
This was added in near#6778, but it's honestly really not needed. There's been some discussion that it's easier to just run mock-node directly, and that the benchmarks don't add a ton of value. Also it's not great to have added binary files to the tree.
This sets up sync performance benchmarks using the existing mock_node tool. The basic setup right now is that we check in tarballs containing sample home dirs in the mock_node/benches directory, and then start a node that will sync from a mock network feeding blocks from that home directory, measuring the time it takes for
view_client.send(GetBlock::latest())
to pass a certain height.Checking in tarballs like this will only be practical for small sample directories, but it should be possible to use the code here to run benchmarks on larger sample directories not checked in to git, possibly with the help of some other tool.
run with
cargo bench -p mock_node -- mock_node_sync_empty
to run the quicker benchmark, or omit the testname to run all.