CN113553249A - 一种操作系统性能的调优方法、计算设备及可读存储介质 - Google Patents
一种操作系统性能的调优方法、计算设备及可读存储介质 Download PDFInfo
- Publication number
- CN113553249A CN113553249A CN202111096793.8A CN202111096793A CN113553249A CN 113553249 A CN113553249 A CN 113553249A CN 202111096793 A CN202111096793 A CN 202111096793A CN 113553249 A CN113553249 A CN 113553249A
- Authority
- CN
- China
- Prior art keywords
- performance
- optimal
- client
- system parameter
- parameter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000012360 testing method Methods 0.000 claims abstract description 112
- 238000013500 data storage Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 20
- 238000011056 performance test Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 2
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种操作系统性能的调优方法、计算设备及可读存储介质,该方法包括:接收系统性能调优请求;确定与所请求的性能偏好对应的测试命令以及初始系统参数,将初始系统参数作为第一系统参数;将所确定的测试命令和第一系统参数发送至网络地址对应的客户端中,以便客户端应用第一系统参数并执行测试命令后返回测试结果;根据第一系统参数和测试结果,生成第二系统参数,在将第一系统参数更新为第二系统参数后重复执行上述步骤;从客户端返回的所有测试结果中确定最优测试结果,并将最优测试结果对应的系统参数作为最优系统参数。本发明实现了用户对操作系统性能偏好定制化设置,提升操作系统调优效率。
Description
技术领域
本发明涉及计算机操作系统领域,尤其涉及一种操作系统性能的调优方法、计算设备及可读存储介质。
背景技术
由于计算设备型号和配置等方面的差异,通用的操作系统在不同的计算设备硬件上,在一些方面的性能表现差异较大,需要系统调优人员根据软件、硬件环境对系统进行调整使系统性能达到最优,因此系统调优人员需要投入大量的精力和时间成本。
在现有方案中,由于软硬件环境的多样性,导致操作系统调优依赖于经验丰富的技术专家,需要投入较多人员、技术及时间成本。并且,在现有的方案中,由于操作系统厂商预先对系统进行了配置,因此用户对于操作系统性能的诉求强依赖于操作系统厂商,这样无法满足部分用户对于系统性能的定制化需求,用户也无法灵活地按需对操作系统性能进行调整。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
为此,本发明提供了一种操作系统性能的调优方法、计算设备及可读存储介质,以力图解决或至少缓解上面存在的问题。
根据本发明的第一个方面,提供了一种操作系统性能的调优方法,适于在服务端中执行,服务端与客户端通信连接,服务端还与数据存储装置连接,数据存储装置中存储有性能偏好与测试命令以及初始系统参数的第一对应关系,方法包括:接收系统性能调优请求,系统性能调优请求包括客户端的网络地址和用户对客户端操作系统的性能偏好;查询数据存储装置中是否存在与系统性能调优请求对应的最优系统参数;若不存在最优系统参数,则基于第一对应关系,确定与所请求的性能偏好对应的测试命令以及初始系统参数,并将初始系统参数作为第一系统参数;将所确定的测试命令和第一系统参数发送至网络地址对应的客户端中,以便客户端应用第一系统参数并执行测试命令后,返回测试结果;根据第一系统参数和测试结果,生成第二系统参数,在将第一系统参数更新为第二系统参数后,重复执行将所确定的测试命令和第一系统参数发送至网络地址对应的客户端中的步骤,直到满足预定条件;从客户端返回的所有测试结果中确定最优测试结果,并将最优测试结果对应的系统参数作为最优系统参数,发送至网络地址对应的客户端中。
可选地,在根据本发明的方法中,在确定出最优测试结果之后,方法还包括:将客户端的网络地址和性能偏好与最优系统参数的第二对应关系存储至数据存储装置中。
可选地,在根据本发明的方法中,在查询所述数据存储装置中是否存在与系统性能调优请求对应的最优系统参数的步骤之后,还包括:若存在最优系统参数,则将最优系统参数发送至网络地址对应的客户端中。
可选地,在根据本发明的方法中,根据第一系统参数和测试结果,生成第二系统参数的步骤包括:根据第一系统参数和测试结果进行目标函数的构建;构建与目标函数相关的概率函数,确定概率最大时的目标函数对应的系统参数值作为第二系统参数。
可选地,在根据本发明的方法中,预定条件为:执行将所确定的测试命令和第一系统参数发送至网络地址对应的客户端中的步骤达到预定次数。
可选地,在根据本发明的方法中,服务端与多个客户端通信连接,系统性能调优请求包括多个客户端的网络地址和用户对每个客户端操作系统的性能偏好,方法还包括:对于每个网络地址和性能偏好,均执行从查询数据存储装置中是否存在与系统性能调优请求对应的最优系统参数的步骤开始的步骤。
可选地,在根据本发明的方法中,在将最优测试结果对应的系统参数作为最优系统参数,发送至网络地址对应的客户端中的步骤之后,还包括:重新执行从基于所述第一对应关系,确定与所请求的性能偏好对应的测试命令以及初始系统参数的步骤开始的步骤,得到新的最优系统参数;将新的最优系统参数与已有的最优系统参数进行比较;若新的最优系统参数与已有的最优系统参数之间的差异超过预定值,则将差异信息添加到日志文件中以提醒用户。
可选地,在根据本发明的方法中,在得到新的最优系统参数的步骤之后,还包括:将客户端的网络地址和性能偏好与最优系统参数的第二对应关系进行删除,并存储客户端的网络地址和性能偏好与新的最优系统参数的第二对应关系。
可选地,在根据本发明的方法中,预定值为已有的最优系统参数的30%。
可选地,在根据本发明的方法中,用户对客户端操作系统的性能要求包括:网络吞吐性能最优、输入输出性能最优和unixbench性能测试分数最优中至少一个。
可选地,在根据本发明的方法中,性能要求对应的测试命令包括:netperf测试指令、iozone测试指令和unixbench测试指令中至少一个。
可选地,在根据本发明的方法中,数据存储装置包括数据库。
根据本发明的第二个方面,提供了一种操作系统性能的调优方法,适于在客户端中执行,客户端与服务端通信连接,方法包括:接收到来自服务端的测试命令和第一系统参数时,应用第一系统参数,并执行测试命令,将测试结果发送至服务端中;接收到来自服务端的最优系统参数时,应用最优系统参数,其中,最优系统参数按照如上的方法生成。
根据本发明的第三个方面,提供了一种计算设备,包括:一个或多个处理器;和存储器;一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本发明的操作系统性能的调优方法中的任一方法的指令。
根据本发明的第四个方面,提供一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,指令当计算设备执行时,使得计算设备执行根据本发明的操作系统性能的调优方法中的任一方法。
根据本发明的技术方案,基于用户对系统性能偏好的需求,为客户端生成最优的系统参数,最终使客户端得到能够满足用户需求的操作系统。实现了用户对操作系统性能偏好定制化设置,减少性能调优专家的投入,提升操作系统调优效率。基于本发明的技术方案,普通计算机用户便可以根据需要,对一台或多台计算机分别进行操作系统性能调优,从而掌握计算机资源配置的主动性,最大限度提升所需要的计算机性能。
进一步地,本发明提供的操作系统性能调优方法也具备同时对多台计算机分别进行调优的能力,用户为多台计算机制定相应的性能偏好发送给服务端,服务端会按照用户请求同时对客户机进行调优。
更进一步地,对同一网络地址的客户端采用相同性能偏好进行多次调优时,若调优参数差异较大会进行提醒,方便专业技术人员发现潜在问题并及时处理。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的操作系统性能的调优系统100的示意图;
图2示出了根据本发明一个实施例的计算设备200的结构框图;
图3示出了根据本发明一个实施例的操作系统性能的调优方法的流程图;
图4示出了根据本发明另一个实施例的操作系统性能的调优方法的流程图;
图5示出了根据本发明还有一个实施例的操作系统性能的调优方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
首先,针对本发明中涉及的术语进行解释说明:
服务端:是指用于接收用户请求,与数据库进行交互,计算系统参数并发送给客户端,以及接收客户端返回的的性能工具测试结果的计算设备。在无需重新编译内核的情况下,客户端和服务端可以是同一台计算机。
客户端:是指操作系统参数待调优的计算设备,用于接收服务端发送的系统参数,执行性能测试命令,以及将性能测试结果反馈给服务端。客户端可以是安装有linux操作系统的计算设备。
初始系统参数:通常是根据调优工程师经验挑选出的对系统性能产生影响的若干个系统参数。每一个系统性能方向或性能偏好对应一组这样的系统参数,已被固化进服务端。
贝叶斯算法:一种统计学的分类算法,本文特指既有的贝叶斯算法库提供的方法。在本发明中的作用是:根据一组系统调优参数的值和一个性能测试结果,计算得出系统调优参数的另一组值,多次计算后得出使得性能测试结果最优的一套系统调优参数。
benchmark性能测试:是目前最主要的性能测试技术,按照统一的测试规范对被测系统进行测试,测试结果之间具有可比性,并可再现测试结果,利用iozone、netperf、unixbench测试工具进行测试均属于benchmark性能测试。
iozone:是一个文件系统的性能测试工具,可以测试不同的操作系统中文件系统的读写性能。
netperf:是一种网络性能的测量工具。
unixbench:是一款开源的测试类unix系统(Unix,BSD,Linux)基本性能的工具。
图1示出了根据本发明一个实施例的操作系统性能的调优系统100的示意图。如图1所示,系统100包括用户110、服务端120、数据存储装置130以及一个或多个客户端140(图中示出3个),服务端120经由网络与客户端140进行通信。
用户110通过与服务端120通信连接来向服务端120发送系统性能调优请求,该请求包括客户端网络地址和用户对客户端操作系统的性能偏好。用户110通过向服务端120发送系统性能调优请求对客户端的操作系统进行调优。
服务端120用于接收来自用户的系统性能调优请求,与数据存储装置130连接,并与数据存储装置130进行交互,以获取不同的操作系统性能偏好对应的测试命令和初始系统参数(即性能偏好与测试命令以及初始系统参数的第一对应关系),计算新的系统参数,以及与客户端140进行通信连接,向客户端140发送系统参数和/或测试命令,接收客户端发送的测试结果、应用成功的消息。
服务端120根据接收到的性能调优请求,查询数据存储装置130中是否存在该性能调优请求所对应的最优系统参数,若存在则将查询到的最优系统参数发送给客户端140,若不存在则将性能偏好对应的测试命令和初始系统参数发送给客户端140。服务端120还适于根据客户端140执行测试命令和第一系统参数得到的测试结果和第一系统参数生成新的系统参数(即第二系统参数),并将第二系统参数和测试命令发送至客户端140中,服务端120还适于判断是否调优完成。
数据存储装置130用于存储客户端的网络地址和性能偏好与最优系统参数的第二对应关系,即网络地址和性能偏好二者的组合与最优系统参数的对应关系,例如,(网络地址1,性能偏好1)对应的最优系统参数为最优系统参数1。数据存储装置130还存储有性能偏好与测试命令以及初始系统参数的第一对应关系,即测试命令和初始系统参数二者的组合与性能偏好的对应关系,例如,(测试命令1,初始系统参数1)对应的性能偏好为性能偏好1。当服务端需要使用最优系统参数或初始系统参数时,可以从数据存储装置130中获取。数据存储装置130具体可以实现为数据库或数据存储服务器。
客户端140可以实现为安装有linux操作系统的计算设备,客户端140适于执行来自服务端120的测试命令和第一系统参数,还适于对系统参数进行应用。
用户110、服务端120、数据存储装置130、客户端140均可以实现为如图2所示的计算设备200。计算设备之间可以通过诸如局域网(LAN)或者如因特网的广域网(WAN)的网络进行通信。该网络可以是任何类型的通信网络或其组合,并且可以包括任何数量的有线或无线链路。通常,通过网络的通信可以经由任何类型的有线和/或无线连接,使用各种通信协议(例如,TCP/IP、HTTP、SMTP、FTP)、编码或格式(例如,HTML、XML、JSON)和/或保护方案(例如,VPN、HTTPS、SSL)来承载。
图2示出了根据本发明一个实施例的计算设备200的结构框图。如图2所示,在基本的配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。
取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(µP)、微控制器(µC)、数字信息处理器(DSP)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器206可以包括操作系统220、一个或者多个程序222以及程序数据228。在一些实施方式中,程序222可以布置为在操作系统上由一个或者多个处理器204利用程序数据228执行根据本发明的操作系统性能的调优方法。
计算设备200还可以包括储存接口总线234。储存接口总线234实现了从储存设备232(例如,可移除储存器236和不可移除储存器238)经由总线/接口控制器230到基本配置202的通信。操作系统220、程序222以及数据224的至少一部分可以存储在可移除储存器236和/或不可移除储存器238上,并且在计算设备200上电或者要执行程序222时,经由储存接口总线234而加载到系统存储器206中,并由一个或者多个处理器204来执行。
计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个A/V端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外围接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个I/O端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为以便经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备200中,程序222包括本发明的操作系统性能的调优方法的多条程序指令,这些程序指令可以指示处理器204执行本发明的计算设备200中运行的操作系统性能的调优方法中的步骤,以便计算设备200中的各部分通过执行本发明的操作系统性能的调优方法来实现对服务资源进行配置。
计算设备200可以实现为服务器,例如文件服务器240、数据库250、服务器、应用程序服务器等,这些电子设备可以是诸如个人数字助理(PDA)、无线网络浏览设备、应用专用设备、或者可以包括上面任何功能的混合设备。可以实现为包括桌面计算机和笔记本计算机配置的个人计算机,也在一些实施例中,计算设备200被配置为执行本发明的操作系统性能的调优方法。
图3示出了根据本发明一个实施例的操作系统性能的调优方法的流程图,如图3所示,该方法始于步骤S310。在步骤S310中,服务端接收系统性能调优请求,该系统性能调优请求包括客户端的网络地址和用户对客户端操作系统的性能偏好。用户对客户端操作系统的性能偏好表示用户更侧重于操作系统哪方面的性能。
随后,在步骤S320中,基于第一对应关系,确定与所请求的性能偏好对应的测试命令以及初始系统参数,并将初始系统参数作为第一系统参数。其中,性能偏好与测试命令以及初始系统参数的第一对应关系存储在服务端或与服务端连接的数据存储装置中。
所请求的性能偏好例如为,网络吞吐性能最优、输入输出性能最优(即io性能最优)或unixbench性能测试分数最优。以上述性能偏好为例,网络吞吐性能最优对应的测试命令为netperf测试指令、io性能最优对应的测试命令为iozone测试指令以及unixbench性能测试分数最优对应的测试命令为unixbench测试指令。
根据本发明实施例,性能偏好对应的初始系统参数为调优工程师针对不同性能偏好根据经验挑选出的较好的系统参数,以便客户端在较好的系统参数的基础上进一步对系统参数进行调优,降低系统参数调优的复杂度,以便在执行步骤较少的情况下获得最优的系统参数。其中,每一个性能偏好对应有一组初始系统参数。
随后,在步骤S330中,将所确定的测试命令和第一系统参数发送至网络地址对应的客户端中,客户端接收到测试命令和第一系统参数后,先应用第一系统参数(使该第一系统参数在客户端中生效),然后执行测试命令后,将生成的测试结果返回给服务端。具体地,每一个客户端具有不同的网络地址(即ip地址),通过网络地址来确定目标客户端,并向目标客户端发送所确定的测试命令和第一系统参数。
随后,在步骤S340中,根据第一系统参数和测试结果,生成第二系统参数,并将第一系统参数更新为第二系统参数,然后判断预定条件是否满足,若是,则进入步骤S350,若否,返回执行步骤S330。
其中,预定条件为执行步骤S330中的将所确定的测试命令和第一系统参数发送至网络地址对应的客户端中的步骤达到预定次数,预定条件也可以是执行步骤S340中的根据第一系统参数和测试结果生成第二系统参数的步骤达到预定次数。
在系统参数优化领域,根据当前的系统参数以及测试结果,来生成新的系统参数,有很多种实现方式,本发明实施例对具体采用何种实现方式不做限制,本领域技术人员可以根据实际情况进行合理选择。
根据本发明的一个实施例,采用贝叶斯算法来根据第一系统参数和测试结果来生成第二系统参数。首先,根据第一系统参数和测试结果进行目标函数的构建。可选地,目标函数可以是线性函数,即y=ax+b的形式。若第一系统参数包括多个参数,则对每一个参数与测试结果构建一个目标函数。
然后,构建与目标函数相关的概率函数,确定概率最大时的目标函数对应的系统参数值作为第二系统参数。可选地,使用贝叶斯定理估计目标函数的后验分布,在后验分布的最值中选择下一个系统参数。
由于步骤S340会执行多次,每一次执行均会产生一组新的系统参数。可选地,根据新生成的系统参数对构建的目标函数进行持续的优化。
随后,在步骤S350中,从客户端返回的所有测试结果中确定最优测试结果,并将最优测试结果对应的系统参数作为最优系统参数,发送至网络地址对应的客户端中。具体地,若用户所选的性能偏好为网络吞吐性能达到最优,则最优测试结果为网络吞吐性能最优;若用户所选的性能偏好为io性能达到最优,则最优测试结果为io性能最优;若用户所选的性能偏好为unixbench性能测试分数达到最高,则最优测试结果为unixbench性能测试的得分最高。然后,确定达成最优测试结果时所应用的系统参数,该系统参数即最优系统参数。所确定的最优系统参数即能够最大化满足用户性能偏好需求的系统参数,客户端接收并应用最优系统参数后,客户端的操作系统能够实现用户对自定义性能的需要,该操作系统的性能将得到有效提升,特别是在性能偏好的方面。
图4示出了根据本发明另一个实施例的操作系统性能的调优方法的流程图,如图4所示,该方法始于步骤S410。在步骤S410中,用户输入待调优计算机的网络地址以及每台计算机想要调整的性能偏好,根据用户输入的信息生成一条系统性能调优请求发送至服务端。其中,系统性能调优请求中包括用户输入的待调优计算机的网络地址以及用户对每台计算机操作系统的性能偏好。用户可以对一台或多台计算机同时进行调优,可以为每一台计算机制定不同的性能偏好,实现性能目标定制化制定。
随后,在步骤S420中,服务端查询是否已存在用户请求所对应的最优系统参数。服务端将从服务端或与服务端连接的数据库中确定是否已存在用户发送的系统性能调优请求所对应的最优系统参数。若用户曾发出过相同的系统性能调优请求,那么服务端和客户端针对相同的系统性能调优请求已经进行过调优,那么服务端或与服务端连接的数据库中已经存在有前次调优所生成的最优调优参数。
若存在用户请求所对应的系统参数,则执行步骤S422,服务端从数据库中获取最优系统参数,然后将该最优系统参数和应用该系统参数的指令发送至客户端。
随后,客户端在接收到该最优系统参数和应用该系统参数的指令后,执行步骤S430,客户端执行应用该系统参数的指令以对该最优系统参数进行应用,在应用最优系统参数后,向服务端发送返回结果。返回结果包括客户端应用该最优系统参数成功后,应用最优系统参数成功的消息。
随后,在服务端接收到来自客户端的返回结果后,执行步骤S432,将来自客户端的返回结果发送至用户,以便用户及时获知客户端对于系统参数的应用情况。
在步骤S420之后,若不存在用户请求所对应的最优系统参数,则在服务端执行步骤S424,向客户端发送系统参数和性能测试命令。可选地,服务端第一次向客户端发送性能偏好对应的系统参数和性能测试命令时,所发送的系统参数为初始系统参数,将初始系统参数作为第一系统参数。若服务端不是第一次向客户端发送性能偏好对应的系统参数和性能测试命令,则服务端生成新的系统参数(即第二系统参数),将新生成的系统参数与性能测试命令一并发送至客户端中。其中,新的系统参数可以采用如上文所述的根据第一系统参数和测试结果,生成第二系统参数的方法生成,在此不做赘述。
随后,执行步骤S440,当客户端收到来自服务端的系统参数和性能测试命令后,客户端应用该系统参数,并执行性能测试命令,生成测试结果。
随后,在步骤S442中,客户端将测试结果发送至服务端。
随后,在步骤S444中,在服务端检测是否调优完成。
若调优未完成,即未满足预定条件,则执行步骤S450,返回步骤S424,服务端再次向客户端发送系统参数和性能测试命令。
若调优完成,即满足预定条件,则执行步骤S452,将用户的系统性能调优请求和调优得到的最优系统参数写入数据库。这组最优系统参数即最大化满足用户请求的操作系统参数,将这组最优系统参数应用到客户端,客户端在应用后即拥有满足用户性能偏好的操作系统。
在步骤S460中,向客户端发送最优系统参数。
在步骤S462中,客户端接收到来自服务端的最优系统参数后,客户端将对最优系统参数进行应用。可选地,客户端在应用了最优系统参数后,将应用是否成功的消息返回给客户端,之后客户端将该消息发送至用户,以便用户及时获知客户端的应用情况。
此外,若用户选择对客户端进行重新调优,可以向服务端发送重新调优的请求。服务端收到该请求后,按照上述步骤S410-462,调试出一组新的最优系统参数。在服务端对比数据库中在先存储的最优系统调优参数的值和新调试出的新的最优系统参数,若两者差异过大,则后台向用户的日志文件记录一个提示信息,以提示用户历史最优系统参数的值与新调试的系统调优参数的值差异较大,方便有专业知识的人排查系统潜在的问题。可选地,确定差异是否过大的方式为:新调试出的最优系统参数与在先存储的最优系统参数差异超过在先存储的最优系统参数的30%,则确定为差异过大。系统参数通常为一组值,即具有多个值,若最优系统参数为多个数值,则将新调试出的最优系统参数的每一个值都与在先存储的最优系统参数中相对应的值进行对比,计算两者之前的差异,若每个值的差异均超过在先存储的最优系统参数的30%,则确定为差异过大。根据本发明实施例,服务端随后删除数据库中已存储的客户端网络地址和性能偏好与对应的在先存储的最优系统参数,将新的最优系统参数以及其相应的性能偏好和网络地址记录到数据库中,也就是说每一次系统参数调优后,利用新生成的最优系统参数将在先存储的最优系统参数进行覆盖。
图5示出了根据本发明还有一个实施例的操作系统性能的调优方法的流程图。如图5所示,该方法始于步骤S510。在步骤S510中,用户希望对A、B、C三台计算机分别进行性能调优,用户输入性能偏好请求及计算机的网络地址,发送给客户端,其中,用户对三台计算机的性能偏好分别为:计算机A的网络吞吐性能达到最优,计算机B的输入输出性能(即io性能)达到最优,计算机C的unixbench性能测试分数达到最高。步骤S520中,服务端根据用户请求查找数据库中是否已有这种组合的系统调优记录,若没有,执行步骤S532,服务端向计算机A发送netperf测试指令,向计算机B发送iozone测试指令,向计算机C发送unixbench测试指令。随后在步骤S560中,各计算机分别执行对应的性能测试命令即相应的初始系统参数,向服务端发送执行测试命令后的测试结果。在步骤S570中,服务端接收到各客户端返回的测试结果,若已调试完成,执行步骤S580,计算机A、B、C分别应用系统参数,并执行步骤S582,在数据库中记录用户请求的性能偏好及最优系统参数的值的集合,这组值即是满足用户请求的调优完成的系统参数的值。否则执行步骤S584,分别计算每个计算机的新的系统调优参数,向计算机A、B、C分别发送应用命令和性能测试命令以及新的系统调优参数,然后进入步骤S560,计算机A、B、C按照这组新的系统调优参数的值重新编译内核,执行相应的测试命令,向服务端返回测试结果。其中,新的系统调优参数可以采用上文所述的生成第二系统参数的步骤,调试完成的条件可以采用上文所述的预定条件,在此不做赘述。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的多语言垃圾文本的识别方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
本说明书的描述中,除非另有明确的规定和限定,术语“连接”、“固定”等均应做广义理解。此外,术语“上”、“下”、“内”、“外”、“顶”、“底”等指示的方位或位置关系是基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的设备或单元必须具有特定的方向、以特定的方位构造和操作,因此,不能理解为对本发明的限制。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。
Claims (10)
1.一种操作系统性能的调优方法,适于在服务端中执行,所述服务端与客户端通信连接,所述服务端还与数据存储装置连接,所述数据存储装置中存储有性能偏好与测试命令以及初始系统参数的第一对应关系,所述方法包括:
接收系统性能调优请求,所述系统性能调优请求包括客户端的网络地址和用户对客户端操作系统的性能偏好;
查询所述数据存储装置中是否存在与所述系统性能调优请求对应的最优系统参数;
若不存在所述最优系统参数,则基于所述第一对应关系,确定与所请求的性能偏好对应的测试命令以及初始系统参数,并将所述初始系统参数作为第一系统参数;
将所确定的测试命令和第一系统参数发送至所述网络地址对应的客户端中,以便所述客户端应用第一系统参数并执行所述测试命令后,返回测试结果;
根据第一系统参数和所述测试结果,生成第二系统参数,在将第一系统参数更新为第二系统参数后,重复执行所述将所确定的测试命令和第一系统参数发送至所述网络地址对应的客户端中的步骤,直到满足预定条件;
从客户端返回的所有测试结果中确定最优测试结果,并将最优测试结果对应的系统参数作为最优系统参数,发送至所述网络地址对应的客户端中。
2.如权利要求1所述的方法,在确定出最优测试结果之后,所述方法还包括:
将客户端的网络地址和性能偏好与最优系统参数的第二对应关系存储至所述数据存储装置中。
3.如权利要求1所述的方法,其中,在所述查询所述数据存储装置中是否存在与所述系统性能调优请求对应的最优系统参数的步骤之后,还包括:
若存在所述最优系统参数,则将所述最优系统参数发送至所述网络地址对应的客户端中。
4.如权利要求1-3中任一项所述的方法,其中,所述根据第一系统参数和所述测试结果,生成第二系统参数的步骤包括:
根据第一系统参数和所述测试结果进行目标函数的构建;
构建与目标函数相关的概率函数,确定概率最大时的目标函数对应的系统参数值作为第二系统参数。
5.如权利要求1所述的方法,其中,所述预定条件为:执行所述将所确定的测试命令和第一系统参数发送至所述网络地址对应的客户端中的步骤达到预定次数。
6.如权利要求1所述的方法,其中,所述服务端与多个客户端通信连接,所述系统性能调优请求包括多个客户端的网络地址和用户对每个客户端操作系统的性能偏好,所述方法还包括:
对于每个网络地址和性能偏好,均执行从所述查询所述数据存储装置中是否存在与所述系统性能调优请求对应的最优系统参数的步骤开始的步骤。
7.如权利要求1或3所述的方法,在所述将最优测试结果对应的系统参数作为最优系统参数,发送至所述网络地址对应的客户端中的步骤之后,还包括:
重新执行从所述基于所述第一对应关系,确定与所请求的性能偏好对应的测试命令以及初始系统参数的步骤开始的步骤,得到新的最优系统参数;
将新的最优系统参数与已有的最优系统参数进行比较;
若所述新的最优系统参数与已有的最优系统参数之间的差异超过预定值,则将差异信息添加到日志文件中以提醒用户。
8.一种操作系统性能的调优方法,适于在客户端中执行,所述客户端与服务端通信连接,所述方法包括:
接收到来自服务端的测试命令和第一系统参数时,应用所述第一系统参数,并执行所述测试命令,将测试结果发送至所述服务端中;
接收到来自服务端的最优系统参数时,应用所述最优系统参数,其中,所述最优系统参数按照如权利要求1-7中任一项所述的方法生成。
9.一种计算设备,包括:
一个或多个处理器;和
存储器;
一个或多个程序,其中所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求1-7所述的方法中的任一方法的指令。
10.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当计算设备执行时,使得所述计算设备执行根据权利要求1-7所述的方法中的任一方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111096793.8A CN113553249B (zh) | 2021-09-18 | 2021-09-18 | 一种操作系统性能的调优方法、计算设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111096793.8A CN113553249B (zh) | 2021-09-18 | 2021-09-18 | 一种操作系统性能的调优方法、计算设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113553249A true CN113553249A (zh) | 2021-10-26 |
CN113553249B CN113553249B (zh) | 2022-01-18 |
Family
ID=78134694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111096793.8A Active CN113553249B (zh) | 2021-09-18 | 2021-09-18 | 一种操作系统性能的调优方法、计算设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113553249B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116204399A (zh) * | 2023-05-06 | 2023-06-02 | 麒麟软件有限公司 | 一种Linux系统性能自动化测试方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103150253A (zh) * | 2013-03-15 | 2013-06-12 | 珠海市君天电子科技有限公司 | 一种用于持续性能测试的方法和系统 |
US20160011951A1 (en) * | 2013-02-28 | 2016-01-14 | International Business Machines Corporation | Techniques for web service black box testing |
CN105808433A (zh) * | 2016-03-04 | 2016-07-27 | 浪潮软件集团有限公司 | 基于Linux操作系统的一键调优方法 |
CN106648472A (zh) * | 2016-12-30 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种基于linux操作系统的磁盘性能优化方法及系统 |
CN107908568A (zh) * | 2017-11-29 | 2018-04-13 | 中标软件有限公司 | 操作系统性能自动化测试方法及装置 |
CN110324185A (zh) * | 2019-06-28 | 2019-10-11 | 京东数字科技控股有限公司 | 超参数调优方法、装置、服务器、客户端及介质 |
CN112000550A (zh) * | 2020-08-24 | 2020-11-27 | 浪潮云信息技术股份公司 | 操作系统参数调优方法、系统、设备及计算机可读介质 |
CN112507267A (zh) * | 2020-12-03 | 2021-03-16 | 上海哔哩哔哩科技有限公司 | 用户偏好设置同步方法、系统、设备及可读存储介质 |
CN112612692A (zh) * | 2020-12-07 | 2021-04-06 | 中标软件有限公司 | 一种linux系统性能调优的方法 |
-
2021
- 2021-09-18 CN CN202111096793.8A patent/CN113553249B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160011951A1 (en) * | 2013-02-28 | 2016-01-14 | International Business Machines Corporation | Techniques for web service black box testing |
CN103150253A (zh) * | 2013-03-15 | 2013-06-12 | 珠海市君天电子科技有限公司 | 一种用于持续性能测试的方法和系统 |
CN105808433A (zh) * | 2016-03-04 | 2016-07-27 | 浪潮软件集团有限公司 | 基于Linux操作系统的一键调优方法 |
CN106648472A (zh) * | 2016-12-30 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种基于linux操作系统的磁盘性能优化方法及系统 |
CN107908568A (zh) * | 2017-11-29 | 2018-04-13 | 中标软件有限公司 | 操作系统性能自动化测试方法及装置 |
CN110324185A (zh) * | 2019-06-28 | 2019-10-11 | 京东数字科技控股有限公司 | 超参数调优方法、装置、服务器、客户端及介质 |
CN112000550A (zh) * | 2020-08-24 | 2020-11-27 | 浪潮云信息技术股份公司 | 操作系统参数调优方法、系统、设备及计算机可读介质 |
CN112507267A (zh) * | 2020-12-03 | 2021-03-16 | 上海哔哩哔哩科技有限公司 | 用户偏好设置同步方法、系统、设备及可读存储介质 |
CN112612692A (zh) * | 2020-12-07 | 2021-04-06 | 中标软件有限公司 | 一种linux系统性能调优的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116204399A (zh) * | 2023-05-06 | 2023-06-02 | 麒麟软件有限公司 | 一种Linux系统性能自动化测试方法及系统 |
CN116204399B (zh) * | 2023-05-06 | 2023-08-08 | 麒麟软件有限公司 | 一种Linux系统性能自动化测试方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113553249B (zh) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11677861B2 (en) | System and method for interoperable communication between entities with different structures | |
CN113553249B (zh) | 一种操作系统性能的调优方法、计算设备及可读存储介质 | |
WO2006112989A2 (en) | Preconditioning for stochastic simulation of computer system performance | |
US10509641B2 (en) | Optimizing feature deployment based on usage pattern | |
CN109933973A (zh) | 密码校验方法、装置、计算机设备及存储介质 | |
US20220121982A1 (en) | Intelligent engines to orchestrate automatic production of robotic process automation bots based on artificial intelligence feedback | |
US20120226484A1 (en) | Calculation simulation system and method thereof | |
US20090094174A1 (en) | Method, system and program product for on demand data mining server with dynamic mining models | |
Diao et al. | Generic online optimization of multiple configuration parameters with application to a database server | |
CN108509440A (zh) | 一种数据处理方法及装置 | |
US11025575B2 (en) | Message recognition system and method configurable to define new message formats | |
CN113836944A (zh) | 用于智能设备的控制方法、系统及其装置、电子设备 | |
KR20220081880A (ko) | 디지털트윈을 이용한 이산사건 시스템 실시간 분석 및 실시간 동작 가시화 장치 | |
CN117033053A (zh) | 应用于汽车营销管理系统软件的数据分析方法及系统 | |
CN111917573A (zh) | 监控方法、监控系统及计算设备 | |
Wozniak et al. | GIPSE: Streamlining the management of simulation on the grid | |
US11775819B2 (en) | Automated configuration determinations for data center devices using artificial intelligence techniques | |
CN114169924A (zh) | 一种广告全链路自动校验方法、装置与计算设备 | |
CN113377791A (zh) | 一种数据处理方法、系统及计算设备 | |
US20210103566A1 (en) | Graph data abbreviation method and apparatus thereof | |
CN112712180A (zh) | 基于可靠性验证的模型构建优化方法、装置、设备和介质 | |
Nuradis et al. | Hybrid bat and genetic algorthim approach for cost effective SaaS placement in cloud environment | |
JP2023541510A (ja) | コンテナ化されたアプリケーションの展開を最適化するためのシステム、方法、及びサーバ | |
US11252036B1 (en) | System for evaluating and tuning resources for anticipated demands | |
US20220398516A1 (en) | System for automatically balancing anticipated infrastructure demands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |