crimson/osd: tune the default for crimson_alien_op_num_threads.

This commit tries to optimize the default size of AlienStore's
thread pool. Recent testing has shown the intial value, which
is `16`, is far from being optimal while the optimum is close
to `4`:

  https://gist.github.com/rzarzynski/c851212f4b0baef4097a6087533ba17b

Further testing by Mark Nelson suggests that the sweet spot is
closer to `8` taking into account 4 KB writes with lower queue
depths:

  https://docs.google.com/spreadsheets/d/1IR9ysWRkaGdX5e9w_YV8kfeeglR2pEY3V9hovY0ECV8/edit#gid=1884533182

As a kind of compromise `6` is proposed in this commit.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
This commit is contained in:
Radoslaw Zarzynski 2021-02-17 12:04:37 +00:00
parent 905ea54ba5
commit a906cbd312

View File

@ -5579,7 +5579,7 @@ std::vector<Option> get_global_options() {
.set_description("The maximum number concurrent IO operations, 0 for unlimited"),
Option("crimson_alien_op_num_threads", Option::TYPE_UINT, Option::LEVEL_ADVANCED)
.set_default(16)
.set_default(6)
.set_flag(Option::FLAG_STARTUP)
.set_description("The number of threads for serving alienized ObjectStore"),