influxdb/influxdb_iox
Dom Dwyer 1bb4c08067
perf: use half of logical cores for persist exec
Changes the default ingester configuration to assign half the logical
cores to datafusion for persist execution. Prior to this commit,
datafusion always used 4 threads by default.

In situations where the ingesters are configured with 4 logical cores or
less, the periodic persist can start enough persist jobs to keep the 4
threads assigned to datafusion busy. Because there are enough threads to
saturate all CPU cores, these CPU-heavy persist threads can impact write
latency by stealing CPU time from the tokio runtime threads.

This change assigns exactly half the threads to DF by default, ensuring
there's always N/2 cores to service I/O heavy API requests.
2023-09-14 17:54:33 +02:00
..
src perf: use half of logical cores for persist exec 2023-09-14 17:54:33 +02:00
tests feat: Optionally specify a table name to get just its schema (#8650) 2023-09-06 13:33:25 +00:00
Cargo.toml perf: use half of logical cores for persist exec 2023-09-14 17:54:33 +02:00
build.rs feat: Add support for data-driven InfluxQL tests (#6830) 2023-02-03 12:56:37 +00:00