summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorGeir Storli <geirst@oath.com>2017-10-11 12:05:41 +0000
committerGeir Storli <geirst@oath.com>2017-10-12 12:12:05 +0000
commit9975d05886599c251886a708b33d8be02f0fb22e (patch)
treebcd8b36691d71d4ba56765d9850d9168c8f192c8 /searchcore
parent00aa542872e3c3cf3004a93da85d6c1464866dd0 (diff)
Add config for feeding concurrency setting.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/config/proton.def15
1 files changed, 15 insertions, 0 deletions
diff --git a/searchcore/src/vespa/searchcore/config/proton.def b/searchcore/src/vespa/searchcore/config/proton.def
index 520dab6c988..ddb2711fac8 100644
--- a/searchcore/src/vespa/searchcore/config/proton.def
+++ b/searchcore/src/vespa/searchcore/config/proton.def
@@ -433,6 +433,21 @@ hwinfo.memory.size long default = 0
## If set to 0, this is sampled by using std::thread::hardware_concurrency().
hwinfo.cpu.cores int default = 0
+## A number between 0.0 and 1.0 that specifies the concurrency when handling feed operations.
+## When set to 1.0 all cores on the cpu is utilized.
+##
+## 4 thread pools used for various aspect of feeding are configured based on this setting:
+## 1) Compressing and compacting documents
+## 2) Writing changes to attribute fields
+## 3) Inverting index fields
+## 4) Writing changes to index fields
+##
+## The number of threads in pool 1 is calculated as:
+## max(ceil(hwinfo.cpu.cores * feeding.concurrency), summary.log.numthreads)
+## The number of threads in each of pools 2-4 is calculated as:
+## max(ceil((hwinfo.cpu.cores * feeding.concurrency)/3), indexing.threads)
+feeding.concurrency double default = 0.5 restart
+
## Adjustment to resource limit when determining if maintenance jobs can run.
##
## Currently used by 'lid_space_compaction' and 'move_buckets' jobs.