通算一体机性能综合调优参考实践
发表于 2025/12/23
0
1 非商用声明
该文档提供的内容为参考实践,仅供用户参考使用,用户可参考实践文档构建自己的软件,按需进行安全、可靠性加固,但不建议直接将相关Demo或镜像文件集成到商用产品中。
2 概述
2.1 背景
鲲鹏服务器出厂的各项配置为通用配置,能够满足基础业务运行需求,但该配置下的应用性能可能会因应用场景、软件栈等不同而有较大差异。要使鲲鹏服务器达到特定业务下的性能最优状态,用户需结合自身实际业务场景、软件部署架构开展针对性调优。传统人工调优模式下,操作人员需要熟悉系统参数配置,了解各种调优手动的作用、方法和适用场景,耗时成本高,还容易因对配置项理解偏差导致调优效果不达预期。
为解决上述问题,将常规的系统调优手段、特定业务场景的调优手段,结合BoostKit等加速套件的能力,设计开发了KAOT(Kunpeng Auto Optimization Tool)工具,将各种调优手段实现自动化使能。该工具旨在通过自动化的调优流程,帮助用户大幅降低性能调优的技术门槛与时间成本,无需深入掌握底层配置原理和配置方法,即可高效、准确地使能各类性能调优项,快速实现系统性能的最佳配置。
2.2 工具简介
KAOT(Kunpeng Auto Optimization Tool)是一款系统性能调优工具,其核心目标是通过自动化操作提升调优效率与易用性。相较于传统人工调优,KAOT 可根据用户指定的应用场景,自动完成调优配置文件生成、调优配置执行及鲲鹏BoostKit加速库安装等一系列操作,同时用户可能指定特定的调优手段进行快速使能,有效降低手动操作的复杂性和出错风险。
本文档将详细介绍KAOT工具的核心命令、参数配置、使用场景及注意事项,助力用户快速上手工具,大幅提升系统调优效率。
2.3 使用说明
本文档适用于需要使用KAOT工具进行系统性能调优的开发、运维人员,用户需对计算机系统架构和常用的调优手段有一定了解且具备基础的命令行操作能力。
2.3.1 调优方式说明
使用KAOT工具进行调优主要有以下两种场景:
- 按调优项进行调优
按调优项进行调优指的是用户手动选择指定的调优项进行使能。
该方式面向熟悉各个调优项及其适用范围的开发人员,通过选择调优项自动完成指定调优手段的使能。若明确当前业务场景所需使能的调优项,可通过该方式指定调优项。
表1 已支持调优项清单
| 序号 | 调优项名称 | 调优项说明 |
|---|---|---|
| 1 | config_core_isolation | 核心隔离配置 |
| 2 | config_hugepages | 大页内存配置 |
| 3 | disable_memory_overcommit | 禁用内存超分 |
| 4 | disable_swap | 禁用交换分区 |
| 5 | disable_transparent_hugepages | 禁用透明大页 |
| 6 | enable_cpu_performance_mode | 启用CPU性能模式 |
| 7 | update_irqbalance | 中断负载均衡 |
| 8 | update_sched_rt_runtime | 更新实时调度运行时 |
| 9 | check_boostkit_hyperscan_installed | 检查hyperscan是否带boostkit加速库 |
详细的调优手段和说明可参考第五章《调优项说明》。
- 按应用场景进行调优
按应用场景调优指的是根据应用场景,自动选择相应的调优项进行使能。
该方式面向有特定使用场景的开发人员,屏蔽了调优项的选择,仅需指定场景,即可自动化完成调优工作,当前版本支持的应用场景有边界网关一体机场景和通用场景。
表2 已支持的应用场景清单
| 序号 | 应用场景可选项 | 应用场景说明 |
|---|---|---|
| 1 | boundary_gateway_appliance | 边界网关一体机场景:面向网关场景下的调优,会选择适合该场景的调优项进行配置,以及hyperscan软件包的自动化编译安装 |
| 2 | common | 通用场景:面向通用场景下的调优,集成了一些通用的操作系统调优手段,当前包含禁用透明大页、禁用交换分区、启用CPU性能模式 |
2.3.2 使用流程说明
KAOT工具的使用流程如下:
- 环境准备:确认系统已安装所有必要的依赖项和工具。
- 选择调优方式:根据业务场景和需求,选择相应的调优方式,可按调优项/场景进行调优。
- 生成调优配置文件:使用工具自动生成调优配置文件。
- 使能调优配置:通过工具使能调优配置文件实现自动化调优。
图1 KAOT工具的使用流程图

3 软件安装及使用条件
3.1 环境要求
本工具对使用环境有相关的依赖,建议参考下表的环境要求进行部署:
表1 工具使用条件
| 依赖项 | 版本/型号 |
|---|---|
| CPU | Kunpeng 920 5250、Kunpeng 920 7260、Kunpeng 920 7270Z |
| OS/内核 | KylinV10 SP3 ARM(4.19)、openEuler20.03 ARM(4.19)、openEuler-22.03-LTS-SP4 aarch64(5.10) |
| Python | 3.9及以上 |
3.2 工具安装
- 源码部署
1. 获取源码通过以下链接下载源码:https://gitcode.com/boostkit/kaot 。
具体的源码包名称以实际下载的源码包版本为准,以下用KAOT.zip举例。
源码包下载完成后执行以下命令进行解压:
unzip KAOT.zip2. 安裝依赖后使用
先进入解压后的源码包路径:
cd KAOT执行以下命令进行安装软件依赖:
pip install -r requirement.txt安装完成后,执行以下命令确认是否安装成功:
python kaot.py -h若回显相关帮助信息代表安装成功。
- 工具卸载
若需卸载软件包,可执行以下命令直接删除目录即可:
rm -r kaot说明:生成的配置文件和基线文件均会保存在该目录下,删除前注意保存所需的文件。
4 工具使用详解
KAOT工具通过执行kaot.py来实现调用,执行时需进入到工具解压后所在的目录。
基本格式
python kaot.py [subcommand] [options]
使用须知
- 参数大小写:所有参数均区分大小写,请遵循工具help说明中的示例格式。
其中子命令分别有以下四个,其功能如下表所示:
表1 调优命令说明
子命令 | 功能 |
|---|---|
basecfg | 生成所有调优项的基线文件(用于记录调优前的配置值) |
generate | 生成指定调优项/场景的调优配置文件(用于使能调优项) |
execute | 根据配置文件内容使能对应的调优项 |
install | 安装加速库,简化安装流程 |
接下来各章节将详细说明整体的使用流程以及每个命令的功能、参数与使用示例。
4.1 概述
用使用KAOT工具进行调优,需结合四个子命令进行配置并使能:
1. 生成基线文件
在执行调优前,需使用python kaot.py basecfg命令来生成当前系统上的基线配置,可以用来执行调优项的撤销。
2. 生成配置文件
根据业务场景,可通过python kaot.py generate命令按场景或调优项来生成配置文件,该配置文件包含了调优项及对应的调优信息。
3. 使能配置文件
生成配置文件后,调优项并不会生效,需执行python kaot.py execute命令来使能调优项,此时调优项才会在环境中生效。
4. 使能软件安装(可选)
若配置项中有和加速库相关的配置,则在使能过程中会校验是否安装对应的加速库,如提示未安装,可通过python kaot.py install命令进行依赖安装,并执行对应软件的自动化脚本实现加速库编译安装。
4.2 python kaot.py basecfg:生成基线配置文件
4.2.1 命令功能
执行此命令将采集当前系统各个调优项的参数值,作为调优项的基线配置值,并生成一个基线配置文件。该文件包含所有调优项的配置,主要作用如下:
- 建立基准:作为系统调优前的初始状态参考。
- 配置对比:便于对比调优前后的配置差异。
- 快速回退:在需要时,为系统恢复至原始配置提供依据。
4.2.2 参数说明
本节将详细列出python kaot.py basecfg命令的所有配置参数。下表对每个参数的缩写、全称、功能、是否必须填写以及使用示例进行了说明,可在使用时参考。
表1 python kaot.py basecfg命令配置参数说明
参数缩写 | 参数全称 | 参数说明 | 是否必选 | 使用示例 |
|---|---|---|---|---|
-l | --log | 设置日志级别,默认为info | 否 | python kaot.py basecfg -l debug |
-h | --help | 查看命令帮助信息 | 否 | python kaot.py basecfg -h |
4.2.3 使用场景与示例
python kaot.py basecfg命令只有一个使用场景,就是生成当前环境下所有调优项的基线文件,使用方法如下:
python kaot.py basecfg生成的基线文件示例如下,其中SYSTEM_INFO为服务器上的系统信息,包含操作系统、cpu型号、内存大小、内核等;FEATURES为要调优的调优项列表,其中name字段为调优项名称,deploy字段为是否使能,可选值为Y/N/NA,执行python kaot.py execute只会使能deploy为Y的调优项,基线文件不涉及,所以为NA,其他字段均为和调优项相关的参数字段。
SYSTEM_INFO:
os: openEuler 22.03 (LTS-SP4)
cpu: Kunpeng 920 7270z
memory: 1006.34 GB
uname:
5.10.0-216.0.0.115.oe2203sp4.aarch64
OPTIMIZATION_ITEMS:
- name: config_core_isolation
deploy: NA
isolcpus: 0-18
nohz_full: 0-18
rcu_nocbs: 0-18
- name: config_hugepages
deploy: NA
hugepagesz: 1G
hugepages: 16
- name: disable_memory_overcommit
deploy: NA
zone_reclaim: 0
- name: disable_swap
deploy: NA
swappiness: 10
- name: disable_transparent_hugepages
deploy: NA
enabled: always
defrag: madvise
- name: enable_cpu_performance_mode
deploy: NA
cpufreq_default_governor: performance
- name: test_feature
deploy: NA
param: current_config_value
- name: update_irqbalance
deploy: NA
irq_balance_status: inactive
- name: update_sched_rt_runtime
deploy: NA
sched_rt_runtime: 9500004.2.4 注意事项
在使用python kaot.py basecfg命令生成基线配置时,请注意以下几点:
- 系统状态:确保系统处于默认或未调优状态。若系统已进行过其他优化操作,生成的基线文件将记录执行时系统上的当前配置信息。
- 文件路径:基线配置文件生成在./output/log/时间戳/目录下,文件名通常为base_config.yaml。
- 执行权限:此操作需要高级权限(如 root 或管理员权限)来读取系统关键配置。权限不足可能导致信息采集不完整。
4.3 python kaot.py generate:生成调优配置文件
4.3.1 命令功能
python kaot.py generate可根据指定的调优项列表或调优场景名称,生成系统调优配置文件,同时也支持基于已有的配置文件新增/删除调优项,满足不同场景的调优需求。
4.3.2 参数说明
表1 python kaot.py generate命令配置参数说明
参数缩写 | 参数全称 | 参数说明 | 是否必选 | 使用示例 |
|---|---|---|---|---|
-o | --output_file_name | 指定生成配置文件名称 | 是 | python kaot.py generate -o feature.yaml -s common |
-f | --features | 要使用的调优项(可多选),可选序号或调优项,如-f 1,2 | 至少选择一个 | python kaot.py generate -f disable_swap,update_irqbalance -o feature.yaml |
-s | --scenario | 要调优的场景名称,可选序号或场景名称,如-s 1 | python kaot.py generate -s boundary_gateway_appliance -o feature.yaml | |
-tp | --target_file_name | 要修改的配置文件名称 | python kaot.py generate -tp feature_config.yaml -af disable_swap -df update_sched_rt_runtime | |
-bp | --base_file_name | 要修改的基线文件名称 | python kaot.py generate -bp base_config.yaml -o feature.yaml | |
-af | --add_features | 要增加调优项的名称(可多选),可选序号或调优项,如-af 1,2 | 需和-tp参数同时使用 | python kaot.py generate -tp feature_config.yaml -af disable_swap |
-df | --delete_features | 要删除调优项的名称(可多选),可选序号或调优项,如-df 1,2 | python kaot.py generate -tp feature_config.yaml -df update_sched_rt_runtime | |
-l | --log | 设置日志级别,默认为info | 否 | python kaot.py generate -f disable_swap -l debug -o feature.yaml |
-h | --help | 查看命令帮助信息 | 否 | python kaot.py generate -h |
4.3.3 使用场景与示例
- 场景1:基于调优项名称生成配置文件
可直接指定需要使用的调优项名称列表,生成对应的配置文件:
python kaot.py generate -f [调优项] -o [生成配置文件名称]以下为执行示例:
# 示例1:指定调优项名称列表,逗号分隔
python kaot.py generate -f disable_swap,update_irqbalance -o feature.yaml
# 示例2:指定调优项序号列表,逗号分隔
python kaot.py generate -f 1,2 -o feature.yaml在./output目录下生成的feature_config.yaml即为对应调优项的配置文件。
- 场景2:基于场景名称生成配置文件可指定调优场景,来生成配置,工具会自动根据选择的场景来生成对应调优项的配置文件:
python kaot.py generate -s [调优场景] -o [生成配置文件名称]以下为执行示例:
python kaot.py generate -s boundary_gateway_appliance -o feature.yaml在./output目录下生成的feature_config.yaml即为对应场景的配置文件。- 场景3:对已有的配置文件进行增加/减少等修改操作
若想对当前已有的配置文件feature_config.yaml进行修改,如增加enable_cpu_performance_mode调优项,删除disable_swap调优项,可参考以下命令进行修改:
python kaot.py generate -tp [配置文件] -af [增加的调优项] -df [删除的调优项]以下为执行示例:
python kaot.py generate -tp feature.yaml -af enable_cpu_performance_mode -df disable_swap注意执行前需确保feature.yaml在./output目录下,执行成功后会对该文件进行修改,并备份原始文件,备份文件路径可通过打屏信息查看。
- 场景4:将生成的基线文件中deploy的值设为Y
若想根据基线文件来进行回退,需在执行调优项使能前将基线文件中的deploy值设为Y,可以执行以下命令进行设置(根据实际情况调整基线文件的路径):
python kaot.py generate -bp [基线文件] -o [生成配置文件名称]以下为执行示例:
python kaot.py generate -bp base_config.yaml -o target_config.yaml注意执行前需确保base_config.yaml在./output目录下,执行成功后在./output目录下生成的target_config.yaml即为修改后的配置文件。
- 场景5:将基线文件中指定调优项的配置同步到配置文件中
若需要回退设备上指定调优项的配置参数至基线值,步骤如下:
1. 通过以下命令自动将指定基线文件中的指定调优项参数同步到之前已下发的配置文件中:
python kaot.py generate -bp [基线文件] -tp [配置文件] -f [待同步的调优项]以下为执行示例:
python kaot.py generate -bp base_config.yaml -tp feature_config.yaml -f disable_swap注意执行前需确保base_config.yaml和feature_config.yaml在./output目录下,示例为将base_config中的disable_swap调优项的配置同步到feature_config中,并将原始的feature_config配置文件进行备份,备份文件路径可通过打屏信息查看。
2. 执行以下命令完成基线文件中的调优项下发,达到回退设备指定调优项的配置参数至基线值的效果:
python kaot.py execute -tp [配置文件]以下为执行示例:
python kaot.py execute -tp feature_config.yaml4.3.4 注意事项
操作注意事项:
- 修改依赖基线:对调优项进行增删(--add_features/--delete_features)的前提是必须指定一个配置文件名称(--target_file_name)。
4.4 python kaot.py execute:使能调优配置
4.4.1 命令功能
加载指定的调优配置文件,执行配置中定义的调优项操作,支持指定部分调优项单独执行,满足精细化调优需求。
4.4.2 参数说明
表1 python kaot.py execute命令配置参数说明
参数缩写 | 参数全称 | 参数说明 | 是否必选 | 使用示例 |
|---|---|---|---|---|
-f | --features | 配置文件中要使能的调优项(可多选),可选序号或调优项,如-f 1,2 | 否 | python kaot.py execute -tp feature_config.yaml -f disable_swap,update_irqbalance |
-tp | --target_file_name | 要执行的调优配置文件名称 | 是 | python kaot.py execute -tp feature_config.yaml |
-l | --log | 设置日志级别,默认为info | 否 | python kaot.py execute -tp feature_config.yaml -l debug |
-h | --help | 查看命令帮助信息 | 否 | python kaot.py execute -h |
4.4.3 使用场景与示例
- 场景1:全量执行,即加载指定的调优配置文件,并执行其中定义的所有调优项。
参考以下命令进行执行:
python kaot.py execute -tp [配置文件]以下为执行示例:
python kaot.py execute -tp feature_config.yaml注意执行前需确保feature_config.yaml在./output目录下,执行成功后,会命令行回显进行日志提示,并生成执行调优前的基线文件base_config.yaml,若调优效果不佳,可基于该文件进行回退。
- 场景2:仅执行配置文件中指定的一个或多个调优项,满足精细化、分步骤的调优需求。
参考以下命令进行执行:
python kaot.py execute -tp [配置文件] -f [调优项]以下为执行示例:
# 示例1:指定调优项名称列表,逗号分隔
python kaot.py execute -tp feature_config.yaml -f disable_swap,update_irqbalance
# 示例2:指定调优项序号列表,逗号分隔
python kaot.py execute -tp feature_config.yaml -f 1,2注意执行前需确保feature_config.yaml在./output目录下,执行成功后,会打屏进行日志提示,并生成执行调优前的基线文件base_config.yaml,该基线文件仅包含执行时指定的调优项。
4.4.4 注意事项
- 前置校验:为确保调优操作的安全性和兼容性,工具会先验证当前系统环境是否与配置文件生成时的环境相符。若环境不匹配,调优将不会执行。
- 执行范围:工具在执行时,会自动筛选出配置文件中标记为deploy: Y的调优项进行应用,其他调优项将被忽略。
- 执行策略:待执行的调优项均按配置文件内调优项的顺序执行,若遇到某个调优项执行失败,则后续的调优项均不会再执行,且当前执行失败的调优项会依据生成的基线文件进行回退,已执行成功的调优项则不受影响。
4.5 python kaot.py install:安装加速库
4.5.1 命令功能
使用该命令自动化安装或卸载鲲鹏BoostKit配套的优化加速库。
4.5.2 参数说明
表1 python kaot.py install命令配置参数说明
参数缩写 | 参数全称 | 参数说明 | 是否必选 | 使用示例 |
|---|---|---|---|---|
-n | --name | 要安装的加速库名称(可多选) | 是 | python kaot.py install -n boostkit_ksl |
-d | --dir | 指定安装包路径 | 否 | python kaot.py install -n boostkit_ksl -d /install_pkgs |
-u | --uninstall | 用于卸载安装的加速库 | 否 | python kaot.py install -u -n boostkit_ksl |
-l | --log | 设置日志级别,默认为info | 否 | python kaot.py install -n boostkit_ksl -l debug |
-h | --help | 查看命令帮助信息 | 否 | python kaot.py install -h |
4.5.3 使用场景与示例
- 场景1:【安装加速库】使用python kaot.py generate生成调优项中包含安装加速库的调优项,执行python kaot.py execute使能该调优项时会检查环境中是否安装对应的加速库,并指引用户使用python kaot.py install命令去安装对应的加速库。
示例:执行python kaot.py execute -tp feature_config.yaml后,若feature_config.yaml包含安装hyperscan加速库的调优项,则会打印"请执行python kaot.py install -n boostkit_ksl指令安装boostkit_ksl加速库,然后执行hyperscan_build脚本进行编译鲲鹏带ksl库版本的hyperscan软件",并执行以下命令:
python kaot.py install -n boostkit_ksl -d ./packages_dir执行成功后即可完成boostkit_ksl加速库安装。
- 场景2:【卸载加速库】执行python kaot.py execute -tp baseconfig.yaml进行回退调优项使能的时候,日志会指引使用python kaot.py uninstall命令去卸载对应的加速库。
示例:执行python kaot.py execute -tp baseconfig.yaml后,若baseconfig.yaml包含回退安装hyperscan加速库的调优项,则会打印"请执行python kaot.py uninstall -n boostkit_ksl指令卸载boostkit_ksl加速库,然后使用原生的hyperscan源码包进行编译",按照提示执行以下命令:
python kaot.py uninstall -n boostkit_ksl执行成功后即可完成boostkit_ksl加速库卸载。
4.5.4 注意事项
- 执行范围:可以通过python kaot.py install -h查看支持安装的加速库后使用python kaot.py install -n 进行加速库安装,支持安装多个,使用空格隔开。
- 执行策略: 部分场景需要执行python kaot.py install后再执行编译安装脚本才能完成鲲鹏带加速库版本软件的编译安装。
- 配套脚本使用说明:
编译安装脚本目录:统一放置在工具文件中的./kaot/install/opensource。
编译安装脚本执行:根据python kaot.py execute命令执行后的提示,执行对应的脚本如hyperscan_build编译对应的带boostkit加速库的软件。
编译安装脚本执行有两种方式,可参考以下示例执行:
1. 不指定安装包目录(联网场景)
执行以下命令,会在当前目录下生成install_files的目录,并联网下载需要的安装包到该目录下:
sh hyperscan_build.sh2. 指定安装包目录(离线场景)
离线场景下,如下载好安装包到指定目录下,如packages_dir下,下表1为hyperscan_build.sh脚本对应的安装包:
表1 安装包说明
安装包名称 | 下载路径 |
|---|---|
boost_1_87_0.tar.gz | http://www.colm.net/files/ragel/ragel-6.10.tar.gz |
ragel-6.10.tar.gz | https://archives.boost.io/release/1.87.0/source/boost_1_87_0.tar.gz |
pcre-8.43.tar.gz | https://sourceforge.net/projects/pcre/files/pcre/8.43/pcre-8.43.tar.gz |
BoostKit-ksl_2.5.2.zip | https://gitee.com/kunpengcompute/boostkit-ksl/releases/download/v2.5.2/BoostKit-ksl_2.5.2.zip |
khsel_enhanced.patch | https://gitee.com/kunpengcompute/hyperscan/blob/khsel/khsel_enhanced.patch |
v5.4.2.aarch64.zip | https://gitee.com/kunpengcompute/hyperscan/archive/refs/tags/v5.4.2.aarch64.zip |
build.sh | https://gitee.com/kunpengcompute/hyperscan/raw/khsel/build.sh |
安装包下载完成后,执行以下命令,会到指定目录packages_dir下检查对应的安装包并进行编译安装:
sh hyperscan_build.sh -d ./packages_dir5 调优项说明
KAOT工具支持的调优项及其说明如下:
表1 调优项详情
调优项 | 调优项名称 | 调优项说明 | 配置项 | 执行操作 |
|---|---|---|---|---|
config_core_isolation | 核心隔离配置 | 将指定的CPU核心与系统通用任务隔离,专用于高性能计算或低延迟应用,以减少调度干扰。 | •isolcpus •nohz_full •rcu_nocbs | 修改或追加/etc/default/grub中GRUB_CMDLINE_LINUX所在行中isolcpus、nohz_full和rcu_nocbs的配置为指定值 |
config_hugepages | 大页内存配置 | 预分配并启用大页内存,减少页表项数量,降低TLB缺失率,提升内存访问密集型应用的性能。 | •hugepagesz •hugepages | 修改或追加/etc/default/grub中GRUB_CMDLINE_LINUX所在行hugepagesz和hugepages的配置为指定值 |
disable_memory_overcommit | 禁用内存超分 | 关闭内核的内存过载承诺机制,确保申请的内存都能被实际分配,避免因内存不足导致进程被OOM Killer终止的风险。 | •disable_memory_overcommit | 修改/proc/sys/vm/zone_reclaim_mode的配置为指定值 |
disable_swap | 禁用交换分区 | 关闭系统使用硬盘Swap空间的功能,强制所有数据驻留在物理内存,避免因换入换出导致的性能抖动,适用于内存充足且要求稳定性的场景。 | •swappiness | 修改/proc/sys/vm/swappiness的配置为指定值 |
disable_transparent_hugepages | 禁用透明大页 | 关闭内核自动管理透明大页的功能,解决某些数据库或特定工作负载因THP的自动合并与拆分导致的性能不稳定问题。 | •enabled •defrag | 修改/sys/kernel/mm/transparent_hugepage/enabled和 /sys/kernel/mm/transparent_hugepage/defrag的配置为指定值 |
enable_cpu_performance_mode | 启用CPU性能模式 | 将CPU调控器(governor)设置为性能模式,使CPU始终以最高主频运行,减少频率切换带来的延迟,提升计算响应速度。 | •cpufreq_default_governor | 修改或追加/etc/default/grub中GRUB_CMDLINE_LINUX所在行cpufreq.default_governor的配置为指定值 |
update_irqbalance | 中断负载均衡 | 优化中断请求在多个CPU核心间的负载分配,避免中断集中导致单个核心过载,提升系统的并行处理能力和响应性。 | •irq_balance_status | 若目标值为active,则执行linux命令systemctl start irqbalance; 若目标值为inactive,则执行linux命令system is-active irqbalance. |
update_sched_rt_runtime | 更新实时调度运行时 | 调整实时进程的CPU时间配额,为实时任务保证确定的CPU调度时间,满足实时性应用的严格要求。 | •sched_rt_runtime | 修改/proc/sys/kernel/sched_rt_runtime_us配置为指定值 |
check_boostkit_hyperscan_installed | 检查hyperscan是否带boostkit加速库 | 检查当前环境的hyperscan是否带boostkit_ksl加速库的版本,没有则提示安装ksl加速库并执行脚本编译hyperscan | •boostkit_hyperscan_install_status | 若目标值为installed,则打印日志提示用户执行kaot install -n boostkit_ksl指令安装boostkit_ksl加速库,然后执行sh hyperscan_build脚本进行编译鲲鹏带ksl库版本的hyperscan软件。 若目标值为uninstalled,则打印日志提示用户执行kaot uninstall -n boostkit_ksl指令卸载boostkit_ksl加速库,然后使用原生的hyperscan源码包进行编译 |
如下是按场景调优会使能的调优项说明:
表2 场景调优说明
使用方式 | 场景 | 使能调优项 |
|---|---|---|
按场景调优 | 边界网关一体机 | 核心隔离配置、大页内存配置、禁用内存超分、禁用交换分区、禁用透明大页、启用CPU性能模式、更新中断平衡配置、更新实时调度运行时、检查hyperscan是否带boostkit加速库 |
通用场景 | 禁用交换分区、禁用透明大页、启用CPU性能模式 |
6 典型场景使用指导
本章节基于网关一体场景,给出该工具使用的最佳实践。
步骤 1 调优前测试环境上的基线性能数据(可选,用来对比调优前后的效果)
根据业务场景进行测试即可。
步骤 2 生成当前环境上的基线文件
执行以下命令生成所有调优项的基线文件:
python kaot.py basecfg步骤 3 根据场景boundary_gateway_appliance生成调优配置文件
执行以下命令生成该场景下的配置文件:
python kaot.py generate -s boundary_gateway_appliance -o feature_config.yaml根据执行成功后的日志回显,可查看生成的配置文件feature_config.yaml是否完整。
步骤 4 使能生成的调优配置文件
执行以下命令使能调优项:
python kaot.py execute -tp feature_config.yaml根据执行打屏日志,可查看生成的基线文件base_config.yaml是否完整、调优项是否执行成功,以及是否需要安装加速库。
步骤 5 通过工具使能加速库安装
根据使能过程中的日志提示,判断是否需要安装加速库软件,若需要按提示进行加速库安装,例如:
python kaot.py install -n boostkit_ksl部分场景需要执行kaot install后再执行编译安装脚本才能完成鲲鹏带加速库版本软件的编译安装,根据日志提示,到对应的目录./kaot/install/opensource运行对应的编译安装脚本。
步骤 6 测试调优后的性能(可选,用来对比调优前后的效果)
按照步骤1的测试方法进行测试。
步骤 7 回退不需要执行的调优配置(可选)
若要回退指定的调优项,需将基线文件的deploy字段修改为Y,并按调优项使能新生成的配置文件,以回退disable_swap为例,使用方式如下:
1. 修改基线文件
python kaot.py generate -bp base_config.yaml -o target_config.yaml得到新生成的配置文件target_config.yaml,执行前注意拷贝基线文件base_config.yaml至./output目录下。
2. 使能新生成的配置文件中的调优项
python kaot.py execute -tp target_config.yaml -f disable_swap部分配置项如boostkit加速库安装的回退需要根据日志提示执行"kaot uninstall -u -n +加速库名称" 卸载boostkit加速库并使用原生版本软件包进行编译。
步骤 8 测试最终性能(可选,用来对比调优前后的效果)
按照步骤1的测试方法进行测试。
----结束↵


