It is desirable to have an idea of performance of functions that touch committee update logic as well the performance of accessor methods to credits.aleo mappings that are related to staking when the number of delegators is at the maximum allowed value.
This PR adds benchmarks of those functions.
Initial Results
Benching using Criterion of both get_value_speculative and get_value_confirmed mappings using RocksDB on Mac OSX 12.6.3 - M1 10-cores - 64 GB memory
Yields the following benchmarks. Most benchmarks for entries ranging from 10 -> 100_000 show a runtime within the vicinity of 100µs. These benchmarks are congruent with other benchmarks on the GET opcode which showed that GET access times do not significantly vary by number of entries into the RocksDB database.
Motivation
It is desirable to have an idea of performance of functions that touch committee update logic as well the performance of accessor methods to credits.aleo mappings that are related to staking when the number of delegators is at the maximum allowed value.
This PR adds benchmarks of those functions.
Initial Results
Benching using
Criterion
of bothget_value_speculative
andget_value_confirmed
mappings usingRocksDB
onMac OSX 12.6.3 - M1 10-cores - 64 GB memory
Yields the following benchmarks. Most benchmarks for entries ranging from
10 -> 100_000
show a runtime within the vicinity of100µs
. These benchmarks are congruent with other benchmarks on theGET
opcode which showed that GET access times do not significantly vary by number of entries into the RocksDB database.