When running benchmarks do the result consider that multiple reads to the same value per block are cached as mentioned in the documentation referenced below?
If caching is not considered in the benchmarks:
- Is it possible to run benchmarks with cache and how?
- Is it recommended to run benchmarks with cache?
Runtime storage allows you to store data in your blockchain that is persisted between blocks and can be accessed from within your runtime logic
https://docs.substrate.io/v3/runtime/storage/
Multiple reads of the same value count as one read.
https://docs.substrate.io/v3/runtime/weights-and-fees/#parameterizing-over-database-accesses