-
Notifications
You must be signed in to change notification settings - Fork 1k
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
[Neo]: add benchmark that adopts existing tests. #3108
Conversation
BenchmarkDotNet v0.13.12, macOS Sonoma 14.2.1 (23C71) [Darwin 23.2.0]
|
BenchmarkDotNet v0.13.12, macOS Sonoma 14.2.1 (23C71) [Darwin 23.2.0]
|
@superboyiii you will not like to test this,it will take many many hours to run...... |
What do those numbers even mean? Are they bad, normal or good? A better test would be |
// * Summary * BenchmarkDotNet v0.13.12, macOS Sonoma 14.2.1 (23C71) [Darwin 23.2.0]
|
Have it first, improve it later. If this hurt you, i am sorry, but i need something to see if my optimization really works, if my later code update improve the benchmark or not. I will run benchmark after i change my code and compare the difference. |
Its doesn't hurt. You just provide no information other than an output. What's the sample rate? Also running something on one machine doesn't show anything either. You run the benchmark in a |
This benchmark is not for showing people We need to know how much we improved. |
Totally agree |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One more
…-benchmark * 'opcodes-benchmark' of github.com:Jim8y/neo: Update benchmarks/Neo.VM.Benchmarks/Benchmark.OpCodes.cs Clean lines Update benchmarks/Neo.VM.Benchmarks/Program.cs # Conflicts: # benchmarks/Neo.VM.Benchmarks/Benchmark.OpCodes.cs # benchmarks/Neo.VM.Benchmarks/Program.cs
…-benchmark * 'opcodes-benchmark' of github.com:Jim8y/neo: Delete benchmarks/Neo.VM.Benchmarks/Benchmark.Block.cs
|
conflicts |
Description
This pr adds benchmark to the neo project, currentlty the benchmark use the VM tests json.
about the block benchmark:
block.txt contains the block and its start states, by loading the text, you can run the block as you run them in a complete ledger.
format of the block.txt:
block.toarray
storagekey.id | storagekey.length | storagekey.Key | storageItem.length | storageitem.Value
...
...
Why those blocks?
100 blocks that have the heavest IO, then the rest have the heavest computation.
Fixes # (issue)
Type of change
How Has This Been Tested?
Existing tests passes.
Test Configuration: None
Checklist: