Comments (1)
Hi Jerry,
Great questions. Sorry for the late reply.
In short, the higher kIteration is, the more dcache misses we see, and fewer icache misses. The number 10 is a little arbitrary but was picked to induce what we found to be a realistic number of misses for both. Sorry I can't be more specific just now.
As you say, typically an application will do some processing on each protobuf message in turn, but it's not solely concerned with proto API operations. The working set size of 10 is trying to simulate that in such a way that the cache metrics look more like a normal application, while still spending most of the benchmark's CPU cycles in proto operations. It's a bit of a balancing act.
We are actively working on improving our fidelity in the proto benchmark, though, as well as the documentation. We'll try to indicate the rationale here more clearly.
from fleetbench.
Related Issues (11)
- Bazel invokes `external/local_config_cc/None` as the linker HOT 1
- compression_benchmark corpus generation not consistent HOT 2
- Provide a way to bench memory allocators HOT 1
- Generation of populate_protos.h HOT 3
- dataset and micro-benchmark support HOT 1
- bazel threw out errors when building HOT 3
- Build fleetbench failed as no permission with Bazel 5.4.0 HOT 8
- Use own version of protobuf locally HOT 5
- Fleetbench-proto build fails with Clang+ThinLTO HOT 9
- FDO build failing due to missing bazel_tools HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fleetbench.