diff options
author | Håvard Pettersen <havardpe@yahooinc.com> | 2023-06-26 12:10:33 +0000 |
---|---|---|
committer | Håvard Pettersen <havardpe@yahooinc.com> | 2023-06-26 12:10:33 +0000 |
commit | 0716bd52e13fcb5526b9ab7af38836cb3eddb11e (patch) | |
tree | 18c4d46b6d9f36833fc29e2b829a48933cd926a8 | |
parent | 9a3c640020fbac38fbfde33f342f367373f0948f (diff) |
add comment
-rw-r--r-- | vespalib/src/tests/rw_spin_lock/rw_spin_lock_test.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/vespalib/src/tests/rw_spin_lock/rw_spin_lock_test.cpp b/vespalib/src/tests/rw_spin_lock/rw_spin_lock_test.cpp index eb712c67aff..afd18a13d2e 100644 --- a/vespalib/src/tests/rw_spin_lock/rw_spin_lock_test.cpp +++ b/vespalib/src/tests/rw_spin_lock/rw_spin_lock_test.cpp @@ -24,6 +24,23 @@ size_t state_loop = 1; //----------------------------------------------------------------------------- +/** + * Estimates the 80th percentile by throwing away the 2 best samples + * in each set of 10 samples, using the best remaining sample as a + * representative for the set. Representatives are hierarchically + * matched against representatives from other sample sets. Result + * extraction is simplified in that it does not try to estimate the + * actual 80th percentile, but rather tries to drop the best samples + * if possible. + * + * The goal is to have a more robust way of combining repeated + * micro-benchmark samples than simply using minimum time. With simple + * single-threaded CPU-bound tasks, minimum time is a good measure of + * how expensive something is, but when we start benchmarking + * operations that may conflict with themselves, we do not want to + * account for being super lucky. However, we still want to account + * for the benchmark conditions being as good as possible. + **/ struct Est80P { struct Level { int cnt; |