System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于系统软件性能优化领域,特别是一种基于自动化参数配置优化的软件系统性能调优方法及装置。
技术介绍
1、随着互联网和计算机科学技术的快速发展,人工智能、云计算和大数据等技术成为主要的发展趋势。大型企业在解决实际业务场景中的问题时,越来越多地采用大规模软件系统,如大数据分析组件、数据库和web服务器等。然而,由于软件系统的复杂性,参数配置成为一个挑战。默认参数配置的应用导致了性能下降,影响了服务质量。
2、为了解决软件系统性能下降的问题,可以从硬件和软件两个方面进行考虑。一些公司通过增加硬件资源来解决性能问题,但这会增加成本压力。对于中小型公司而言,需要从软件系统本身的角度进行性能优化,即通过合理配置参数来提升性能。
3、然而,软件系统参数配置面临多个挑战。首先,人工优化参数耗时且昂贵,需要进行多次测试、分析和资源重新分配。其次,软件系统通常有大量的配置参数,这些参数之间可能存在依赖关系,难以理解和学习。此外,随着软件系统版本和特性的发布,配置参数数量不断增加,优化难度也增加。最后,软件系统参数的最佳配置取决于应用场景的硬件配置和工作负载,一个应用场景下的最佳配置可能不适用于其他场景。
技术实现思路
1、基于上述原因,本专利技术公开了一种基于自动化参数配置优化的软件系统性能调优方法及装置,旨在解决软件系统性能下降的问题。对于给定的软件系统和特定的工作负载,软件系统性能优化(performance tuning for software systems
2、本专利技术的技术方案,包括:
3、一种基于自动化参数配置优化的软件系统性能调优方法,包括:
4、收集面向待调优系统的待调优配置集;
5、从所述待调优配置集中采样若干个候选配置实例;
6、利用不同候选配置实例下的性能样本,配置所述待调优系统的性能预测模型,并基于所述性能预测模型,得到当前配置实例的推荐配置;其中,所述性能预测模型基于一代理模型、一采样函数和一优化策略构建;
7、依据所述推荐配置重置所述待调优系统后,识别所述待调优系统的当前工作负载,并评估所述当前工作负载的性能值;
8、基于所述当前工作负载的性能值调整所述代理模型、所述采样函数和所述优化策略后,返回至所述从所述待调优配置集中采样若干个候选配置实例;
9、直至满足第一设定停止条件时,输出对应的推荐配置。
10、进一步地,所述利用不同候选配置实例下的性能样本,配置所述待调优系统的性能预测模型,并基于所述性能预测模型,得到当前配置实例的推荐配置,包括:
11、根据采样若干个候选配置实例,创建配置空间,所述配置空间包含待优化配置参数,以及每一待优化配置参数的取值范围、参数类型、依赖条件和条件限制;
12、创建一容器,所述容器用于记录每组配置集合对应的性能评估结果;
13、根据所述配置空间中的待优化的配置参数以及每一待优化的参数的取值范围,使用基于低差异序列的随机采样算法生成多组候选配置集合;
14、依次将所述候选配置集合输入到待调优系统中运行,并将每组候选配置集合对应的性能评估结果作为训练样本,更新到所述容器中;
15、创建或获取调整后的代理模型,并使用新代理模型来更新采样函数;
16、基于所述候选配置集合和所述候选配置集合的性能指标来训练代理模型,以得到新代理模型;
17、基于更新后的优化策略和更新后的采样函数更新候选配置集合;
18、基于更新后的候选配置集合,返回至所述依次将所述候选配置集合输入到待调优系统中运行,直至达到第二设定停止条件;
19、通过对所述容器中的性能评估结果进行特征分析,以排除对性能提升影响小于设定值的配置选项和调整待优化参数的取值范围;
20、基于调整后的配置选项和调整后的待优化的参数的取值范围,返回至所述根据采样若干个候选配置实例,创建配置空间,直至达到第三设定停止条件后,输出当前配置实例的推荐配置。
21、进一步地,所述采样函数包括:概率提升采样函数、期望提升采样函数、下置信界采样函数、每秒期望提升采样函数、每秒概率提升采样函数和/或约束期望提升采样函数。
22、进一步地,所述优化策略包括:基于采样函数的排序优化算法、基于本地最优配置的局部搜索优化算法或基于梯度的优化算法。
23、进一步地,所述根据所述配置空间中的待优化的配置参数以及每一待优化的参数的取值范围,使用基于低差异序列的随机采样算法生成多组候选配置集合,包括:
24、确定超参数的取值范围和类型;
25、根据待调优系统的应用需求和超参数类型,选择基于低差异序列的随机采样算法;
26、对每个超参数进行映射和缩放操作,以将所述超参数的取值范围转化到设定范围;
27、利用所选的基于低差异序列的随机采样算法,生成一系列采样点;其中,每一采样点表示一个配置;
28、将所述采样点反映射到所述超参数转化后的取值范围,以得到多组候选配置集合,
29、进一步地,所述基于低差异序列的随机采样算法,包括:基于halton序列的随机采样算法、基于sobol序列的随机采样算法、基于hammersley序列的随机采样算法或拉丁超立方抽样算法。
30、进一步地,所述识别所述待调优系统的当前工作负载,包括:
31、监测所述待调优系统在不同工作负载下的性能指标数据;其中,所述性能指标数据包括:cpu使用率、内存使用量、磁盘读写速度和网络带宽;
32、对所述性能指标数据进行特征提取,得到统计特征;其中,所述统计特征包括:平均值、最大值、最小值、方差、相关性、趋势和周期性;
33、使用所述性能指标数据和所述统计特征,建立系统负载模型;
34、利用建立好的系统负载模型,对当前工作负载下的性能指标数据进行分类和识别,得到当前工作负载。
35、进一步地,所述评估所述当前工作负载的性能值,包括:
36、获取待调优系统、当前工作负载和当前的推荐配置;
37、基于待调优系统、当前工作负载和当前的推荐配置,计算当前工作负载的性能值。
38、一种基于自动化参数配置优化的软件系统性能调优装置,包括:
39、配置收集模块,用于收集面向待调优系统的待调优配置集;
40、配置采样模块,用于从所述待调优配置集中采样若干个候选配置实例;
41、性能调优模块,用于利用不同候选配置实例下的性能样本,配置所述待调优系统的性能预测模型,并基于所述性能预测模型,得到当前配置实例的推荐配置;其中,所述性能预测模型基于一代理模型、一采样函数和一优化策略构建;
42、负载识别模块,用于依据所述推荐本文档来自技高网...
【技术保护点】
1.一种基于自动化参数配置优化的软件系统性能调优方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述利用不同候选配置实例下的性能样本,配置所述待调优系统的性能预测模型,并基于所述性能预测模型,得到当前配置实例的推荐配置,包括:
3.如权利要求1或2所述的方法,其特征在于,所述采样函数包括:概率提升采样函数、期望提升采样函数、下置信界采样函数、每秒期望提升采样函数、每秒概率提升采样函数和/或约束期望提升采样函数。
4.如权利要求1或2所述的方法,其特征在于,所述优化策略包括:基于采样函数的排序优化算法、基于本地最优配置的局部搜索优化算法或基于梯度的优化算法。
5.如权利要求2所述的方法,其特征在于,所述根据所述配置空间中的待优化的配置参数以及每一待优化的参数的取值范围,使用基于低差异序列的随机采样算法生成多组候选配置集合,包括:
6.如权利要求5所述的方法,其特征在于,所述基于低差异序列的随机采样算法,包括:基于Halton序列的随机采样算法、基于Sobol序列的随机采样算法、基于Hammersl
7.如权利要求1所述的方法,其特征在于,所述识别所述待调优系统的当前工作负载,包括:
8.如权利要求1所述的方法,其特征在于,所述评估所述当前工作负载的性能值,包括:
9.一种基于自动化参数配置优化的软件系统性能调优装置,其特征在于,所述装置包括:
10.一种计算机设备,其特征在于,所述计算机设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-8任一项所述的基于自动化参数配置优化的软件系统性能调优方法。
...【技术特征摘要】
1.一种基于自动化参数配置优化的软件系统性能调优方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述利用不同候选配置实例下的性能样本,配置所述待调优系统的性能预测模型,并基于所述性能预测模型,得到当前配置实例的推荐配置,包括:
3.如权利要求1或2所述的方法,其特征在于,所述采样函数包括:概率提升采样函数、期望提升采样函数、下置信界采样函数、每秒期望提升采样函数、每秒概率提升采样函数和/或约束期望提升采样函数。
4.如权利要求1或2所述的方法,其特征在于,所述优化策略包括:基于采样函数的排序优化算法、基于本地最优配置的局部搜索优化算法或基于梯度的优化算法。
5.如权利要求2所述的方法,其特征在于,所述根据所述配置空间中的待优化的配置参数以及每一待优化的参数的取值范围,使用基于低差异序列的随...
【专利技术属性】
技术研发人员:纪贤松,侯朋朋,于佳耕,武延军,
申请(专利权)人:中国科学院软件研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。