Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While playing with ignore-msb-bits param, there were lots of variance in node overcommit result caused by the rng picking a different seed every run. Possibly confusing an user who expects the param affects sharding inside a node, not distribution across nodes.
It's good to allow the user to feed a consistent seed across runs, such that the results with different ignore-msb-bits values will be less impacted by that variance.
BEFORE:
$ ./shardsim --nodes 10 --vnodes 32 --shard 12 --ignore-msb-bits 0
10 nodes, 32 vnodes, 12 shards
maximum node overcommit: 1.29554
maximum shard overcommit: 3.833120
$ ./shardsim --nodes 10 --vnodes 32 --shard 12 --ignore-msb-bits 12
10 nodes, 32 vnodes, 12 shards
maximum node overcommit: 1.17842
maximum shard overcommit: 1.184462
AFTER:
$ ./shardsim --nodes 10 --vnodes 32 --shard 12 --ignore-msb-bits 0 --random-seed 690930217
10 nodes, 32 vnodes, 12 shards
maximum node overcommit: 1.23774
maximum shard overcommit: 3.793953
$ ./shardsim --nodes 10 --vnodes 32 --shard 12 --ignore-msb-bits 12 --random-seed 690930217
10 nodes, 32 vnodes, 12 shards
maximum node overcommit: 1.23774
maximum shard overcommit: 1.240964
Signed-off-by: Raphael S. Carvalho [email protected]