From 40289a4fc8a95aaf0dbce48337acc9f2a657b185 Mon Sep 17 00:00:00 2001 From: Yang Zhang Date: Wed, 10 Dec 2025 13:46:07 -0800 Subject: [PATCH 1/8] Add unified.cpu-threshold config Signed-off-by: Yang Zhang --- tikv-configuration-file.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 16ea7bf90057..ea1746d7c6e6 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -330,6 +330,12 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con + 是否开启自动调整线程池的大小。开启此配置可以基于当前的 CPU 使用情况,自动调整统一处理读请求的线程池 (UnifyReadPool) 的大小,优化 TiKV 的读性能。目前线程池自动调整的范围为:`[max-thread-count, MAX(4, CPU)]`(上限与 [`max-thread-count`](#max-thread-count) 可设置的最大值相同)。 + 默认值:false +### `cpu-threshold` 从 v8.5.5 版本开始引入 + ++ 这是一个用于控制统一读取池可以占用的最大 CPU 资源比例的参数,如当该配置为 0.8 时,unified read pool 最多可以使用 80% 的 CPU 资源。当设置为 0 时, CPU 使用率不作为主要的限制因素,线程池的规模调整主要依据当前有多少线程正在处理任务。当设置为大于 0 时:在繁忙线程伸缩算法的基础上,增加 CPU 阈值约束。这会更严格地控制资源使用,引入以下机制:1.强制缩减:当 CPU 使用率超过设置的阈值加上 10% 的缓冲时,系统会强制缩小读取池的规模。2.阻止扩增: 当扩大读取池规模会导致 CPU 使用率超过设置的阈值减去 10% 的缓冲时,系统会阻止读取池扩大规模。 ++ 默认值:0.0 ++ 可调整范围:`[0.0, 1.0]` + ## readpool.storage 存储线程池相关的配置项。 From ac29c27af889ecb16eb83412e93e343f852ea43d Mon Sep 17 00:00:00 2001 From: Yang Zhang Date: Wed, 10 Dec 2025 15:36:06 -0800 Subject: [PATCH 2/8] Resolve comment Signed-off-by: Yang Zhang --- tikv-configuration-file.md | 1 + 1 file changed, 1 insertion(+) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index ea1746d7c6e6..6866e67637f3 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -333,6 +333,7 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con ### `cpu-threshold` 从 v8.5.5 版本开始引入 + 这是一个用于控制统一读取池可以占用的最大 CPU 资源比例的参数,如当该配置为 0.8 时,unified read pool 最多可以使用 80% 的 CPU 资源。当设置为 0 时, CPU 使用率不作为主要的限制因素,线程池的规模调整主要依据当前有多少线程正在处理任务。当设置为大于 0 时:在繁忙线程伸缩算法的基础上,增加 CPU 阈值约束。这会更严格地控制资源使用,引入以下机制:1.强制缩减:当 CPU 使用率超过设置的阈值加上 10% 的缓冲时,系统会强制缩小读取池的规模。2.阻止扩增: 当扩大读取池规模会导致 CPU 使用率超过设置的阈值减去 10% 的缓冲时,系统会阻止读取池扩大规模。 ++ 仅当 [`readpool.unified.auto-adjust-pool-size`](#auto-adjust-pool-size-从-v630-版本开始引入) 设置为 true 时生效。 + 默认值:0.0 + 可调整范围:`[0.0, 1.0]` From 181dbfb95f4e1354342003bf424e01b8a6c383c9 Mon Sep 17 00:00:00 2001 From: Yang Zhang Date: Wed, 17 Dec 2025 00:10:50 -0800 Subject: [PATCH 3/8] Update tikv-configuration-file.md Co-authored-by: Grace Cai --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 6866e67637f3..9382b1f3f6b9 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -330,7 +330,7 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con + 是否开启自动调整线程池的大小。开启此配置可以基于当前的 CPU 使用情况,自动调整统一处理读请求的线程池 (UnifyReadPool) 的大小,优化 TiKV 的读性能。目前线程池自动调整的范围为:`[max-thread-count, MAX(4, CPU)]`(上限与 [`max-thread-count`](#max-thread-count) 可设置的最大值相同)。 + 默认值:false -### `cpu-threshold` 从 v8.5.5 版本开始引入 +### `cpu-threshold` 从 v8.5.5 和 v9.0.0 版本开始引入 + 这是一个用于控制统一读取池可以占用的最大 CPU 资源比例的参数,如当该配置为 0.8 时,unified read pool 最多可以使用 80% 的 CPU 资源。当设置为 0 时, CPU 使用率不作为主要的限制因素,线程池的规模调整主要依据当前有多少线程正在处理任务。当设置为大于 0 时:在繁忙线程伸缩算法的基础上,增加 CPU 阈值约束。这会更严格地控制资源使用,引入以下机制:1.强制缩减:当 CPU 使用率超过设置的阈值加上 10% 的缓冲时,系统会强制缩小读取池的规模。2.阻止扩增: 当扩大读取池规模会导致 CPU 使用率超过设置的阈值减去 10% 的缓冲时,系统会阻止读取池扩大规模。 + 仅当 [`readpool.unified.auto-adjust-pool-size`](#auto-adjust-pool-size-从-v630-版本开始引入) 设置为 true 时生效。 From 75463e29572b4a92e3304c54e4d92d6efd15d6e1 Mon Sep 17 00:00:00 2001 From: Yang Zhang Date: Wed, 17 Dec 2025 23:52:27 -0800 Subject: [PATCH 4/8] Update tikv-configuration-file.md Co-authored-by: Grace Cai --- tikv-configuration-file.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 9382b1f3f6b9..e0ff906523ec 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -332,7 +332,11 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con ### `cpu-threshold` 从 v8.5.5 和 v9.0.0 版本开始引入 -+ 这是一个用于控制统一读取池可以占用的最大 CPU 资源比例的参数,如当该配置为 0.8 时,unified read pool 最多可以使用 80% 的 CPU 资源。当设置为 0 时, CPU 使用率不作为主要的限制因素,线程池的规模调整主要依据当前有多少线程正在处理任务。当设置为大于 0 时:在繁忙线程伸缩算法的基础上,增加 CPU 阈值约束。这会更严格地控制资源使用,引入以下机制:1.强制缩减:当 CPU 使用率超过设置的阈值加上 10% 的缓冲时,系统会强制缩小读取池的规模。2.阻止扩增: 当扩大读取池规模会导致 CPU 使用率超过设置的阈值减去 10% 的缓冲时,系统会阻止读取池扩大规模。 ++ 限制统一处理读请求的线程池 (UnifyReadPool) 可使用的最大 CPU 资源比例。例如,当该值为 `0.8` 时,该线程池最多可使用 80% 的 CPU。 + + 默认情况下(该值为 `0.0` 时),表示不限制 UnifyReadPool 的 CPU 资源比例,该线程池的规模主要根据当前处理任务的线程数量动态调整。 + + 当设置该值大于 `0.0` 时,TiKV 会在原有的繁忙线程伸缩算法基础上,引入以下 CPU 使用率阈值约束,以更严格地控制 CPU 资源使用: + + 强制缩减:当 UnifyReadPool 的CPU 使用率超过该配置项值加上 10% 的缓冲时,TiKV 会强制缩小 UnifyReadPool 的规模。 + + 阻止扩增:当扩大 UnifyReadPool 规模可能导致 CPU 使用率超过配置阈值减去 10% 的缓冲时,TiKV 会阻止 UnifyReadPool 继续扩大规模。 + 仅当 [`readpool.unified.auto-adjust-pool-size`](#auto-adjust-pool-size-从-v630-版本开始引入) 设置为 true 时生效。 + 默认值:0.0 + 可调整范围:`[0.0, 1.0]` From 1a9ed388988832a1528ddcc32b5edd085092f020 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Jan 2026 10:49:13 +0800 Subject: [PATCH 5/8] to be consistent with the EN PR --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index e0ff906523ec..eb8df107111e 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -333,7 +333,7 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con ### `cpu-threshold` 从 v8.5.5 和 v9.0.0 版本开始引入 + 限制统一处理读请求的线程池 (UnifyReadPool) 可使用的最大 CPU 资源比例。例如,当该值为 `0.8` 时,该线程池最多可使用 80% 的 CPU。 - + 默认情况下(该值为 `0.0` 时),表示不限制 UnifyReadPool 的 CPU 资源比例,该线程池的规模主要根据当前处理任务的线程数量动态调整。 + + 默认情况下(该值为 `0.0` 时),表示不限制 UnifyReadPool 的 CPU 资源比例,该线程池的规模完全由繁忙线程伸缩算法决定,该算法会根据当前处理任务的线程数量动态调整。 + 当设置该值大于 `0.0` 时,TiKV 会在原有的繁忙线程伸缩算法基础上,引入以下 CPU 使用率阈值约束,以更严格地控制 CPU 资源使用: + 强制缩减:当 UnifyReadPool 的CPU 使用率超过该配置项值加上 10% 的缓冲时,TiKV 会强制缩小 UnifyReadPool 的规模。 + 阻止扩增:当扩大 UnifyReadPool 规模可能导致 CPU 使用率超过配置阈值减去 10% 的缓冲时,TiKV 会阻止 UnifyReadPool 继续扩大规模。 From 8a7453f55394b2692f78fa61f7e0163363fc8397 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Jan 2026 10:50:48 +0800 Subject: [PATCH 6/8] format udpates --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index eb8df107111e..980c7874ef13 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -338,7 +338,7 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con + 强制缩减:当 UnifyReadPool 的CPU 使用率超过该配置项值加上 10% 的缓冲时,TiKV 会强制缩小 UnifyReadPool 的规模。 + 阻止扩增:当扩大 UnifyReadPool 规模可能导致 CPU 使用率超过配置阈值减去 10% 的缓冲时,TiKV 会阻止 UnifyReadPool 继续扩大规模。 + 仅当 [`readpool.unified.auto-adjust-pool-size`](#auto-adjust-pool-size-从-v630-版本开始引入) 设置为 true 时生效。 -+ 默认值:0.0 ++ 默认值:`0.0` + 可调整范围:`[0.0, 1.0]` ## readpool.storage From 9b09c812f54ee910ca86103de7dd03a88b259b3d Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Jan 2026 10:59:56 +0800 Subject: [PATCH 7/8] Update tikv-configuration-file.md Co-authored-by: Aolin --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 980c7874ef13..39a212be065e 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -337,7 +337,7 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con + 当设置该值大于 `0.0` 时,TiKV 会在原有的繁忙线程伸缩算法基础上,引入以下 CPU 使用率阈值约束,以更严格地控制 CPU 资源使用: + 强制缩减:当 UnifyReadPool 的CPU 使用率超过该配置项值加上 10% 的缓冲时,TiKV 会强制缩小 UnifyReadPool 的规模。 + 阻止扩增:当扩大 UnifyReadPool 规模可能导致 CPU 使用率超过配置阈值减去 10% 的缓冲时,TiKV 会阻止 UnifyReadPool 继续扩大规模。 -+ 仅当 [`readpool.unified.auto-adjust-pool-size`](#auto-adjust-pool-size-从-v630-版本开始引入) 设置为 true 时生效。 ++ 仅当 [`readpool.unified.auto-adjust-pool-size`](#auto-adjust-pool-size-从-v630-版本开始引入) 设置为 `true` 时生效。 + 默认值:`0.0` + 可调整范围:`[0.0, 1.0]` From 59a8ad8c34bbfd59b2de1e061f25d65066b8cc55 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Tue, 13 Jan 2026 13:43:04 +0800 Subject: [PATCH 8/8] Update tikv-configuration-file.md --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 39a212be065e..1ecd9c645d14 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -330,7 +330,7 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con + 是否开启自动调整线程池的大小。开启此配置可以基于当前的 CPU 使用情况,自动调整统一处理读请求的线程池 (UnifyReadPool) 的大小,优化 TiKV 的读性能。目前线程池自动调整的范围为:`[max-thread-count, MAX(4, CPU)]`(上限与 [`max-thread-count`](#max-thread-count) 可设置的最大值相同)。 + 默认值:false -### `cpu-threshold` 从 v8.5.5 和 v9.0.0 版本开始引入 +### `cpu-threshold` 从 v8.5.5 版本开始引入 + 限制统一处理读请求的线程池 (UnifyReadPool) 可使用的最大 CPU 资源比例。例如,当该值为 `0.8` 时,该线程池最多可使用 80% 的 CPU。 + 默认情况下(该值为 `0.0` 时),表示不限制 UnifyReadPool 的 CPU 资源比例,该线程池的规模完全由繁忙线程伸缩算法决定,该算法会根据当前处理任务的线程数量动态调整。