Open exalate-issue-sync[bot] opened 1 year ago
Raymond Peck commented: This is one of many bottom-up tests that we really ought to have. I'm sure [~accountid:557058:6790afb9-728d-4398-a865-75fa28f915df], who has been advocating for more platform tests, has lots more ideas about what else to test.
Bill Gallmeister commented: Navdeep, I think these issues are related to the performance/accuracy tests and harness.
Raymond Peck commented: According to [~accountid:557058:389d9607-5bd8-4611-8c6a-755fe9295223]:
Eric started writing some micro-benchmarks of NBHM and comparing to ConcurrentHashmap. The tests are in h2o-3 branch eric_test_perf, and currently are only single-JVM. These benchmarks need to be made multi-system, and eventually run on empty nodes with a dedicated network. He used Maven to run the tests.
Michal ported one of these tests to our standard Gradle infrastructure in branch EXP_micro_bench.
These tests use a benchmarking framework from OpenJDK called jmh.
He proposes collecting the system data using this telemetry server: [grafana+graphite|https://github.com/kamon-io/docker-grafana-graphite]
Steps:
Look at these two branches and understand the pieces. Be able to run the existing tests in each branch.
Port Eric's other NBHM tests to EXP_micro_bench.
Wire up H2O to grafana+graphite for collecting test telemetry.
Get the tests running multi-machine. Use Steam for launching the clusters?
Figure out how to accurately measure our performance.
Do we need warmup? Does speed degrade over time? How does NBHM perform in the face of resize? Many readers and 1 writer? Many writers? Various levels of load? Network congestion (use the Linux equivalent of dummynet).
Possibly wire up Zipkin to measure distributed performance metrics.
JIRA Issue Migration Info
Jira Issue: PUBDEV-1720 Assignee: Surekha Jadhwani Reporter: Arno Candel State: In Progress Fix Version: N/A Attachments: N/A Development PRs: N/A
Would be nice to know how many keys we can insert/delete/modify/etc. per second on a given set of hardware, load, memory fill rate, etc.