CN116225311B - 终端设备存储系统参数的配置方法、装置和服务器 - Google Patents

终端设备存储系统参数的配置方法、装置和服务器 Download PDF

Info

Publication number
CN116225311B
CN116225311B CN202211597507.0A CN202211597507A CN116225311B CN 116225311 B CN116225311 B CN 116225311B CN 202211597507 A CN202211597507 A CN 202211597507A CN 116225311 B CN116225311 B CN 116225311B
Authority
CN
China
Prior art keywords
configuration parameters
performance target
target value
target values
performance
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.)
Active
Application number
CN202211597507.0A
Other languages
English (en)
Other versions
CN116225311A (zh
Inventor
肖尧
陈锐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202211597507.0A priority Critical patent/CN116225311B/zh
Publication of CN116225311A publication Critical patent/CN116225311A/zh
Application granted granted Critical
Publication of CN116225311B publication Critical patent/CN116225311B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例提供一种终端设备存储系统参数的配置方法、装置和服务器,上述方法中,服务器分别根据至少两个IO性能目标值,获得对应的配置参数,然后将对应的配置参数合并,判断根据合并后的配置参数,是否获取到满足至少两个IO性能目标值的配置参数,如果获取到,则获取用户的使用偏好,从满足至少两个IO性能目标值的配置参数中选择符合用户的使用偏好的目标配置参数,将目标配置参数发送给用户使用的终端设备,以供终端设备通过EBPF技术将目标配置参数下发到内核,从而可以实现根据用户的使用偏好,对该用户使用的终端设备的存储系统参数进行配置,实现了对多IO性能目标值的配置参数进行用户定制化调优,加强了用户和设备之间的联系。

Description

终端设备存储系统参数的配置方法、装置和服务器
技术领域
本申请实施例涉及智能终端技术领域,特别涉及一种终端设备存储系统参数的配置方法、装置和服务器。
背景技术
图1为现有相关技术提供的存储架构的示意图,如图1所示,终端设备(例如:手机)的存储过程中主要涉及用户、内核和设备3个对象,内核部分则包括3层,分别为文件系统层、块(block)层和驱动(drive)层,存储过程中由用户通过应用(application,APP)发出读写请求,经过内核部分相关操作实现和设备的交互。存储最终的受益主体为用户,但现有相关技术中,存储的相关操作主要由内核和设备完成,在这个过程中对于终端设备的存储系统参数需要相关配置,但是在配置过程中现有相关技术存在以下问题:
1)随着时间发展,设备不断迭代,但是迭代过程中,老的内核参数并不一定能完全适配新的硬件基础,在这个过程中需要不断地迭代相关配置参数,从而能够充分发挥出新设备的优势,提高整体性能,但是在该迭代过程中,现有相关技术只能依靠之前的经验基础来完成对应配置,工作量大,不能充分发挥硬件优势。
2)内核部分也在不断的增加相关新特性,例如:在块层引入了多队列(multi-queue)架构,增加了多队列调度器,在内核5.1后又引入了io_uring的异步输入输出(inputoutput,IO)方法,在众多的调度器选择和io_uring的异步IO配置中,参数众多,针对某一个调度器的配置参数很难使得众多调度器都达到最优效果,同时采用不同的配置参数,调度器的存储性能表现也不同,可能存在某一个调度器的读性能较高,但是写性能较低,诸如此类。
3)存储性能的最终受益对象为用户,但是不同的用户具有不同的使用习惯,对不同的存储性能需求不同,例如某些用户可能对随机读写需求较高,但是对顺序读写需求较低,某些用户对写性能需求较高,但对读性能需求较低,故在针对于不同用户时,期望能够对其配置专属的配置参数,可以通过定制化的方式使得用户得到较高的受益。
发明内容
本申请实施例提供了一种终端设备存储系统参数的配置方法、装置和服务器,本申请实施例还提供一种计算机可读存储介质,以实现根据用户的使用偏好,对该用户使用的终端设备的存储系统参数进行配置,加强用户和设备之间的联系。
第一方面,本申请实施例提供了一种终端设备存储系统参数的配置方法,包括:分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数;其中,所述配置参数包括IO调度器参数、内存和中央处理单元CPU频率;将所述至少两个IO性能目标值对应的配置参数合并;判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数;如果获取到满足所述至少两个IO性能目标值的配置参数,则获取用户的使用偏好;从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数;将所述目标配置参数发送给所述用户使用的终端设备,以供所述终端设备通过扩展的伯克利数据包过滤器技术将所述目标配置参数下发到所述终端设备的内核。
其中一种可能的实现方式中,所述从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数包括:根据所述用户的使用偏好,确定与所述用户的使用偏好相符的IO性能目标值;根据与所述用户的使用偏好相符的IO性能目标值,从满足所述至少两个IO性能目标值的配置参数中选择目标配置参数。
其中一种可能的实现方式中,所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数之后,还包括:如果根据合并后的配置参数,未获取到满足所述至少两个IO性能目标值的配置参数,则对所述合并后的配置参数进行排序,计算排序后的配置参数的拥挤度;根据所述拥挤度,从所述排序后的配置参数中选择配置参数;将选择的配置参数加入满足所述至少两个IO性能目标值的配置参数,继续执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤及其后续步骤。
其中一种可能的实现方式中,所述根据IO性能目标值,获得所述IO性能目标值对应的配置参数包括:根据所述IO性能目标值对应的先验配置参数和所述IO性能目标值,获得所述IO性能目标值对应的配置参数。
其中一种可能的实现方式中,所述至少两个IO性能目标值包括:第一IO性能目标值和第二IO性能目标值;所述分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数包括:根据所述第一IO性能目标值,获得所述第一IO性能目标值对应的配置参数;根据所述第二IO性能目标值,获得所述第二IO性能目标值对应的配置参数。
第二方面,本申请实施例提供一种终端设备存储系统参数的配置装置,该装置包含在服务器中,该装置具有实现第一方面及第一方面的可能实现方式中服务器行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,先验生成模块、多目标优化模块和偏好选择模块。
第三方面,本申请实施例提供一种服务器,包括:一个或多个处理器;存储器;多个应用程序;以及一个或多个计算机程序,其中上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被服务器执行时,使得服务器执行以下步骤:分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数;其中,所述配置参数包括IO调度器参数、内存和中央处理单元CPU频率;将所述至少两个IO性能目标值对应的配置参数合并;判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数;如果获取到满足所述至少两个IO性能目标值的配置参数,则获取用户的使用偏好;从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数;将所述目标配置参数发送给所述用户使用的终端设备,以供所述终端设备通过扩展的伯克利数据包过滤器技术将所述目标配置参数下发到所述终端设备的内核。
其中一种可能的实现方式中,当所述指令被所述服务器执行时,使得所述服务器执行所述从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数的步骤包括:根据所述用户的使用偏好,确定与所述用户的使用偏好相符的IO性能目标值;根据与所述用户的使用偏好相符的IO性能目标值,从满足所述至少两个IO性能目标值的配置参数中选择目标配置参数。
其中一种可能的实现方式中,当所述指令被所述服务器执行时,使得所述服务器执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤之后,还执行以下步骤:如果根据合并后的配置参数,未获取到满足所述至少两个IO性能目标值的配置参数,则对所述合并后的配置参数进行排序,计算排序后的配置参数的拥挤度;根据所述拥挤度,从所述排序后的配置参数中选择配置参数;将选择的配置参数加入满足所述至少两个IO性能目标值的配置参数,继续执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤及其后续步骤。
其中一种可能的实现方式中,当所述指令被所述服务器执行时,使得所述服务器执行所述根据IO性能目标值,获得所述IO性能目标值对应的配置参数的步骤包括:根据所述IO性能目标值对应的先验配置参数和所述IO性能目标值,获得所述IO性能目标值对应的配置参数。
其中一种可能的实现方式中,所述至少两个IO性能目标值包括:第一IO性能目标值和第二IO性能目标值;当所述指令被所述服务器执行时,使得所述服务器执行所述分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数的步骤包括:根据所述第一IO性能目标值,获得所述第一IO性能目标值对应的配置参数;根据所述第二IO性能目标值,获得所述第二IO性能目标值对应的配置参数。
应当理解的是,本申请实施例的第二方面和第三方面与本申请实施例的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
第四方面,本申请实施例提供一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行第一方面提供的方法。
第五方面,本申请实施例提供一种计算机程序,当上述计算机程序被计算机执行时,用于执行第一方面提供的方法。
在一种可能的设计中,第五方面中的程序可以全部或者部分存储在与处理器封装在一起的存储介质上,也可以部分或者全部存储在不与处理器封装在一起的存储器上。
附图说明
图1为现有相关技术提供的存储架构的示意图;
图2为本申请一个实施例提供的服务器的结构示意图;
图3为本申请一个实施例提供的终端设备存储系统参数的配置方法的实现架构图;
图4为本申请一个实施例提供的终端设备存储系统参数的配置方法的流程图;
图5为本申请另一个实施例提供的终端设备存储系统参数的配置方法的流程图;
图6为本申请再一个实施例提供的终端设备存储系统参数的配置方法的流程图;
图7为本申请另一个实施例提供的服务器的结构示意图。
具体实施方式
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
针对现有的存储系统参数配置方案,不能充分发挥硬件优势,很难使得众多调度器都达到最优效果,以及不能针对不同用户提供定制化的参数配置的问题,本申请实施例提供一种终端设备存储系统参数的配置方法,可以实现根据用户的使用偏好,对该用户使用的终端设备的存储系统参数进行配置,加强用户和设备之间的联系。
本申请实施例提供的终端设备存储系统参数的配置方法可以应用于服务器,其中,上述服务器可以为云服务器,例如:云端应用市场的服务器,本申请实施例对服务器的具体类型不作任何限制。
示例性的,图2为本申请一个实施例提供的服务器的结构示意图,如图2所示,服务器200可以包括处理器210和通信接口220。可选地,该服务器200还可以包括存储器230。其中,处理器210、通信接口220和存储器230之间可以通过内部连接通路互相通信,传递控制和/或数据信号,该存储器230用于存储计算机程序,该处理器210用于从该存储器230中调用并运行该计算机程序。
上述处理器210可以和存储器230可以合成一个处理装置,更常见的是彼此独立的部件,处理器210用于执行存储器230中存储的程序代码。具体实现时,该存储器230也可以集成在处理器210中,或者,独立于处理器210。
除此之外,为了使得服务器200的功能更加完善,该服务器200还可以包括输入单元260和显示单元270等中的一个或多个。
可选地,上述服务器200还可以包括电源250,用于给服务器200中的各种器件或电路提供电源。
应理解,图2所示的服务器200中的处理器210可以是片上系统SOC,该处理器210中可以包括中央处理器(central processing unit,CPU),还可以进一步包括其他类型的处理器,例如:图像处理器(graphics processing unit,GPU)等。
为了便于理解,本申请以下实施例将以具有图2所示结构的服务器为例,结合附图和应用场景,对本申请实施例提供的终端设备存储系统参数的配置方法进行具体阐述。需要说明的是,本申请实施例以下描述中提到的终端设备可以为智能手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或个人数字助理(personal digital assistant,PDA)等设备;本申请实施例对终端设备的具体类型不作任何限制。
本申请实施例提供的方法通过扩展的伯克利数据包过滤器(extended Berkeleypacket filter,EBPF)技术和优先验的多目标优化模型的方法实现了终端设备存储系统参数的动态调优,并且对每一个用户实现了定制化,加强了用户和设备之间的联系。
图3为本申请一个实施例提供的终端设备存储系统参数的配置方法的实现架构图,如图3所示,上述架构中主要包括3个模块:先验生成模块、多目标优化模块和偏好选择模块。
1)先验生成模块以一个IO性能值作为优化目标值,得到相对应的N组配置参数解,该模块将上述N组配置参数传递到多目标优化模块中。
具体地,先验生成模块实现了获取先验样本的功能,包含单目标优化和参数综合两个功能,先验生成模块可以分析数据库中的数据,将多组配置参数进行综合,获得使得IO性能接近IO性能目标值的配置参数的取值,作为先验样本导入到多目标优化模块,用于指导算法的迭代过程。
在对block层的调度器进行优化时,在先验生成模块可以首先输入以往的经验参数作为初始值,例如:可以输入IO调度器参数、内存和中央处理单元(central processingunit,CPU)频率作为配置参数的初始值,然后将IO顺序读速率、随机读速率、顺序写速率、随机写速率、数据库性能和功耗之一作为IO性能目标值传入先验生成模块中,通过选取不同的配置参数,最终得到符合单一IO性能目标值的N组配置参数解。
对于io_uring则是选取部分打开的特性和轮询机制的时机作为配置参数,选取IO性能之一作为IO性能目标值,最终得到满足对应的IO性能目标值的多组配置参数,然后传入多目标优化模块中。
2)多目标优化模块则是基于多目标优化算法,对先验生成模块传入的配置参数进行优化,根据多个IO性能目标值对应的配置参数,进行多目标优化,最终得到多组符合优化条件的配置参数解,实现了内核和设备的两个对象的优化。
具体地,多目标优化模块主要负责使用先验初始化种群,采用多目标进化算法对特定负载进行参数调优。在多目标进化算法中快速非支配排序和拥挤度计算操作使用对应公式,然后将其与上一代种群合并生成新的种群,再对合并之后的种群中的所有个体执行交叉变异操作,将生成的子代个体汇入种群中得到下一代种群。通过重复执行这些步骤,种群中的个体越来越逼近最优解,最后模型能预测出若干组符合多个目标的参数解。
对于IO调度器来说,多目标优化模块接收到先验生成模块传递的配置参数之后,此时接收的配置参数对应的IO性能目标值为单一目标,在多目标优化模块中则是将所有IO性能作为一个多目标值进行迭代优化,在优化过程中每一次迭代均会基于上一目标值的基础完成,最终可以得到满足所有IO性能目标的配置参数,上述IO性能目标可以包括IO顺序读速率、随机读速率、顺序写速率、随机写速率、数据库性能和/或功耗等方面的性能目标,配置参数的解也具有多组。
对于io_uring部分则是采用相同的方法,选取IO性能目标值为特性的开关和轮询机制的时机,再经过多目标优化模块优化后,最终得到多组符合IO性能目标值的配置参数。
3)偏好选择模块可以通过EBPF技术向内核发送配置参数,对内核中的存储系统参数进行调整,在该偏好选择模块检测实际用户对IO性能的需求,例如某个用户对于读性能要求高,则向该用户发送对应的配置参数,以提高该用户所使用的终端设备的读性能,从而可以实现对用户需求的定制化,全面提高用户的使用体验。
具体地,偏好选择模块主要分为两部分,用户使用习惯和需求分析部分,以及参数下发部分,第一部分中首先对用户的使用习惯和使用记录进行需求分析,根据用户对IO性能的多个目标值的需求程度选择一组较优的配置参数,并且该部分可根据用户使用习惯改变而变化。
第二部分则是通过EBPF技术将选择参数下发到内核部分,通过内核部分完成了用户对设备层的控制,EBPF技术可以灵活地对不同用户下发,动态加载卸载,通过该功能最终实现了对多IO性能目标值的配置参数进行用户定制化调优。
下面结合图3所示的架构图,对本申请实施例提供的方法进行详细说明。图4为本申请一个实施例提供的终端设备存储系统参数的配置方法的流程图,如图4所示,上述方法可以包括:
步骤401,分别根据至少两个输入输出IO性能目标值,获得上述至少两个IO性能目标值对应的配置参数。
其中,上述配置参数可以包括IO调度器参数、内存和CPU频率;上述IO调度器参数可以包括IO调度器种类、IO带宽和/或IO优先级等。上述IO性能目标值可以包括:IO顺序读速率、随机读速率、顺序写速率、随机写速率、数据库性能和功耗之一。
具体地,根据IO性能目标值,获得上述IO性能目标值对应的配置参数可以为:根据上述IO性能目标值对应的先验配置参数和上述IO性能目标值,获得上述IO性能目标值对应的配置参数。也就是说,服务器200可以先输入IO性能目标值对应的先验配置参数作为初始值,然后根据上述IO性能目标值进行迭代计算,即可获得上述IO性能目标值对应的配置参数。
步骤402,将上述至少两个IO性能目标值对应的配置参数合并。
步骤403,判断根据合并后的配置参数,是否获取到满足至少两个IO性能目标值的配置参数。
具体地,每个IO性能目标值对应的配置参数可以包括N组配置参数,那么至少两个IO性能目标值对应的配置参数就包括至少两个N组配置参数。这样,判断根据合并后的配置参数,是否获取到满足至少两个IO性能目标值的配置参数可以为:判断根据至少两个N组配置参数,是否可以获取到满足至少两个IO性能目标值的N组配置参数。
步骤404,如果获取到满足至少两个IO性能目标值的配置参数,则获取用户的使用偏好。
具体地,可以对用户的使用习惯和使用记录进行需求分析,获取用户的使用偏好。
步骤405,从满足上述至少两个IO性能目标值的配置参数中选择符合用户的使用偏好的目标配置参数。
具体地,从满足上述至少两个IO性能目标值的配置参数中选择符合用户的使用偏好的目标配置参数可以为:根据用户的使用偏好,确定与上述用户的使用偏好相符的IO性能目标值;根据与上述用户的使用偏好相符的IO性能目标值,从满足至少两个IO性能目标值的配置参数中选择目标配置参数。
步骤406,将上述目标配置参数发送给上述用户使用的终端设备,以供终端设备通过EBPF技术将上述目标配置参数下发到终端设备的内核。
本实施例中,服务器200将目标配置参数发送给终端设备之后,终端设备可以通过EBPF技术将上述目标配置参数下发到内核,通过内核完成用户对设备层的控制。EBPF技术可以灵活地对不同用户下发,动态加载卸载,从而可以最终实现对多IO性能目标值的配置参数进行用户定制化调优。
上述终端设备存储系统参数的配置方法中,服务器200分别根据至少两个输入输出IO性能目标值,获得上述至少两个IO性能目标值对应的配置参数,然后将上述至少两个IO性能目标值对应的配置参数合并,判断根据合并后的配置参数,是否获取到满足至少两个IO性能目标值的配置参数,如果获取到满足至少两个IO性能目标值的配置参数,则获取用户的使用偏好,从满足上述至少两个IO性能目标值的配置参数中选择符合用户的使用偏好的目标配置参数,将上述目标配置参数发送给上述用户使用的终端设备,以供终端设备通过EBPF技术将上述目标配置参数下发到终端设备的内核,从而可以实现根据用户的使用偏好,对该用户使用的终端设备的存储系统参数进行配置,实现了对多IO性能目标值的配置参数进行用户定制化调优,加强了用户和设备之间的联系。
图5为本申请另一个实施例提供的终端设备存储系统参数的配置方法的流程图,如图5所示,本申请图4所示实施例中,步骤403之后,还可以包括:
步骤501,如果根据合并后的配置参数,未获取到满足至少两个IO性能目标值的配置参数,则对合并后的配置参数进行排序,计算排序后的配置参数的拥挤度。
步骤502,根据上述拥挤度,从上述排序后的配置参数中选择配置参数。
步骤503,将选择的配置参数加入满足上述至少两个IO性能目标值的配置参数。
然后继续执行步骤403及其后续步骤。
图6为本申请再一个实施例提供的终端设备存储系统参数的配置方法的流程图,如图6所示,本申请图4所示实施例中,上述至少两个IO性能目标值可以包括:第一IO性能目标值和第二IO性能目标值;这样,步骤401可以包括:
步骤601,根据第一IO性能目标值,获得第一IO性能目标值对应的配置参数。
步骤602,根据第二IO性能目标值,获得第二IO性能目标值对应的配置参数。
也就是说,本实施例中,服务器200可以先根据第一IO性能目标值,获得第一IO性能目标值对应的配置参数,再根据第二IO性能目标值,获得第二IO性能目标值对应的配置参数。
举例来说,上述第一IO性能目标值可以为顺序读,第二IO性能目标值可以为顺序写。
本申请实施例提供的终端设备存储系统参数的配置方法实现了系统参数的自动化计算,只需要输入对应的先验参数,不需要人工对每个参数进行实验。另外,上述方法还实现了对不同用户存储系统参数的定制化,通过多目标优化模块获取到了符合多个IO性能目标值的多组参数解,在偏好选择模块根据不同用户的使用偏好,对不同用户发送不同的参数配置值,实现了定制化。
另外,CPU的调度过程也可采用与本申请实施例相同的决策方式,动态调整CPU的频率;在内存应用保活机制中,可以根据不同的用户习惯动态调整目前的保活策略。
可以理解的是,上述实施例中的部分或全部步骤或操作仅是示例,本申请实施例还可以执行其它操作或者各种操作的变形。此外,各个步骤可以按照上述实施例呈现的不同的顺序来执行,并且有可能并非要执行上述实施例中的全部操作。
可以理解的是,服务器为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本申请所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本实施例可以根据上述方法实施例对服务器进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图7为本申请另一个实施例提供的服务器的结构示意图,在采用对应各个功能划分各个功能模块的情况下,图7示出了上述实施例中涉及的服务器700的一种可能的组成示意图,如图7所示,该服务器700可以包括:先验生成模块701、多目标优化模块702和偏好选择模块703;
其中,先验生成模块701,用于分别根据至少两个IO性能目标值,获得至少两个IO性能目标值对应的配置参数;其中,上述配置参数包括IO调度器参数、内存和CPU频率;
多目标优化模块702,用于将至少两个IO性能目标值对应的配置参数合并;以及判断根据合并后的配置参数,是否获取到满足上述至少两个IO性能目标值的配置参数;
偏好选择模块703,用于当多目标优化模块702获取到满足至少两个IO性能目标值的配置参数时,获取用户的使用偏好,从满足至少两个IO性能目标值的配置参数中选择符合上述用户的使用偏好的目标配置参数;以及将目标配置参数发送给用户使用的终端设备,以供终端设备通过EBPF技术将目标配置参数下发到上述终端设备的内核。
本实施例中,偏好选择模块703,具体用于根据上述用户的使用偏好,确定与用户的使用偏好相符的IO性能目标值;根据与上述用户的使用偏好相符的IO性能目标值,从满足至少两个IO性能目标值的配置参数中选择目标配置参数。
进一步地,多目标优化模块702,还用于当根据合并后的配置参数,未获取到满足至少两个IO性能目标值的配置参数时,对上述合并后的配置参数进行排序,计算排序后的配置参数的拥挤度;根据上述拥挤度,从排序后的配置参数中选择配置参数;将选择的配置参数加入满足上述至少两个IO性能目标值的配置参数。
先验生成模块701,具体用于根据上述IO性能目标值对应的先验配置参数和上述IO性能目标值,获得IO性能目标值对应的配置参数。
本实施例中,上述至少两个IO性能目标值可以包括:第一IO性能目标值和第二IO性能目标值;先验生成模块701,具体用于根据第一IO性能目标值,获得第一IO性能目标值对应的配置参数;以及根据第二IO性能目标值,获得第二IO性能目标值对应的配置参数。
需要说明的是,本申请图4~图6所示方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本实施例提供的服务器700,用于执行上述终端设备存储系统参数的配置方法,因此可以达到与上述方法相同的效果。
应当理解的是,服务器700可以对应于图2所示的服务器200。其中,先验生成模块701和多目标优化模块702的功能可以由图2所示的服务器200中处理器210实现;偏好选择模块703的功能可以由图2所示的服务器200中的处理器210和通信接口220实现。
在采用集成的单元的情况下,服务器700可以包括处理模块、存储模块和通信模块。
其中,处理模块可以用于对服务器700的动作进行控制管理,例如,可以用于支持服务器700执行上述先验生成模块701、多目标优化模块702和偏好选择模块703执行的步骤。存储模块可以用于支持服务器700存储程序代码和数据等。通信模块,可以用于支持服务器700与其他设备的通信。
其中,处理模块可以是处理器或控制器,其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框、模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,DSP)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片和/或Wi-Fi芯片等与其他电子设备交互的设备。
在一个实施例中,当处理模块为处理器,存储模块为存储器时,本实施例所涉及的服务器700可以为具有图2所示结构的设备。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请图4~图6所示实施例提供的方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请图4~图6所示实施例提供的方法。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种终端设备存储系统参数的配置方法,其特征在于,包括:
分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数;其中,所述配置参数包括IO调度器参数、内存和中央处理单元CPU频率;所述IO性能目标值包括:IO顺序读速率、随机读速率、顺序写速率、随机写速率、数据库性能和功耗之一;
将所述至少两个IO性能目标值对应的配置参数合并;
判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数;
如果获取到满足所述至少两个IO性能目标值的配置参数,则获取用户的使用偏好;
从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数;
将所述目标配置参数发送给所述用户使用的终端设备,以供所述终端设备通过扩展的伯克利数据包过滤器技术将所述目标配置参数下发到所述终端设备的内核;
其中,所述至少两个IO性能目标值包括:第一IO性能目标值和第二IO性能目标值;
所述分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数包括:
根据所述第一IO性能目标值,获得所述第一IO性能目标值对应的配置参数;
根据所述第二IO性能目标值,获得所述第二IO性能目标值对应的配置参数;
所述第一IO性能目标值对应的配置参数包括N组配置参数,所述第二IO性能目标值对应的配置参数包括N组配置参数,所述第一IO性能目标值对应的配置参数和所述第二IO性能目标值对应的配置参数合并后包括两个N组配置参数;
所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数包括:判断根据两个N组配置参数,是否获取到满足所述第一IO性能目标值和所述第二IO性能目标值的N组配置参数。
2.根据权利要求1所述的方法,其特征在于,所述从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数包括:
根据所述用户的使用偏好,确定与所述用户的使用偏好相符的IO性能目标值;
根据与所述用户的使用偏好相符的IO性能目标值,从满足所述至少两个IO性能目标值的配置参数中选择目标配置参数。
3.根据权利要求1所述的方法,其特征在于,所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数之后,还包括:
如果根据合并后的配置参数,未获取到满足所述至少两个IO性能目标值的配置参数,则对所述合并后的配置参数进行排序,计算排序后的配置参数的拥挤度;
根据所述拥挤度,从所述排序后的配置参数中选择配置参数;
将选择的配置参数加入满足所述至少两个IO性能目标值的配置参数,继续执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤及其后续步骤。
4.根据权利要求1所述的方法,其特征在于,所述根据IO性能目标值,获得所述IO性能目标值对应的配置参数包括:
根据所述IO性能目标值对应的先验配置参数和所述IO性能目标值,获得所述IO性能目标值对应的配置参数。
5.一种终端设备存储系统参数的配置装置,其特征在于,包括:
先验生成模块,用于分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数;其中,上述配置参数包括IO调度器参数、内存和中央处理单元CPU频率;所述IO性能目标值包括:IO顺序读速率、随机读速率、顺序写速率、随机写速率、数据库性能和功耗之一;
多目标优化模块,用于将所述至少两个IO性能目标值对应的配置参数合并;以及判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数;
偏好选择模块,用于当所述多目标优化模块获取到满足所述至少两个IO性能目标值的配置参数时,获取用户的使用偏好,从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数;以及将所述目标配置参数发送给所述用户使用的终端设备,以供所述终端设备通过扩展的伯克利数据包过滤器技术将所述目标配置参数下发到所述终端设备的内核;
其中,所述至少两个IO性能目标值包括:第一IO性能目标值和第二IO性能目标值;
所述先验生成模块,具体用于根据所述第一IO性能目标值,获得所述第一IO性能目标值对应的配置参数;以及根据所述第二IO性能目标值,获得所述第二IO性能目标值对应的配置参数;
所述第一IO性能目标值对应的配置参数包括N组配置参数,所述第二IO性能目标值对应的配置参数包括N组配置参数,所述第一IO性能目标值对应的配置参数和所述第二IO性能目标值对应的配置参数合并后包括两个N组配置参数;
所述多目标优化模块,具体用于判断根据两个N组配置参数,是否获取到满足所述第一IO性能目标值和所述第二IO性能目标值的N组配置参数。
6.一种服务器,其特征在于,包括:
一个或多个处理器;存储器;多个应用程序;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述服务器执行时,使得所述服务器执行以下步骤:
分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数;其中,所述配置参数包括IO调度器参数、内存和中央处理单元CPU频率;所述IO性能目标值包括:IO顺序读速率、随机读速率、顺序写速率、随机写速率、数据库性能和功耗之一;
将所述至少两个IO性能目标值对应的配置参数合并;
判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数;
如果获取到满足所述至少两个IO性能目标值的配置参数,则获取用户的使用偏好;
从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数;
将所述目标配置参数发送给所述用户使用的终端设备,以供所述终端设备通过扩展的伯克利数据包过滤器技术将所述目标配置参数下发到所述终端设备的内核;
其中,所述至少两个IO性能目标值包括:第一IO性能目标值和第二IO性能目标值;当所述指令被所述服务器执行时,使得所述服务器执行所述分别根据至少两个输入输出IO性能目标值,获得所述至少两个IO性能目标值对应的配置参数的步骤包括:
根据所述第一IO性能目标值,获得所述第一IO性能目标值对应的配置参数;
根据所述第二IO性能目标值,获得所述第二IO性能目标值对应的配置参数;
所述第一IO性能目标值对应的配置参数包括N组配置参数,所述第二IO性能目标值对应的配置参数包括N组配置参数,所述第一IO性能目标值对应的配置参数和所述第二IO性能目标值对应的配置参数合并后包括两个N组配置参数;
当所述指令被所述服务器执行时,使得所述服务器执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤包括:判断根据两个N组配置参数,是否获取到满足所述第一IO性能目标值和所述第二IO性能目标值的N组配置参数。
7.根据权利要求6所述的服务器,其特征在于,当所述指令被所述服务器执行时,使得所述服务器执行所述从满足所述至少两个IO性能目标值的配置参数中选择符合所述用户的使用偏好的目标配置参数的步骤包括:
根据所述用户的使用偏好,确定与所述用户的使用偏好相符的IO性能目标值;
根据与所述用户的使用偏好相符的IO性能目标值,从满足所述至少两个IO性能目标值的配置参数中选择目标配置参数。
8.根据权利要求6所述的服务器,其特征在于,当所述指令被所述服务器执行时,使得所述服务器执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤之后,还执行以下步骤:
如果根据合并后的配置参数,未获取到满足所述至少两个IO性能目标值的配置参数,则对所述合并后的配置参数进行排序,计算排序后的配置参数的拥挤度;
根据所述拥挤度,从所述排序后的配置参数中选择配置参数;
将选择的配置参数加入满足所述至少两个IO性能目标值的配置参数,继续执行所述判断根据合并后的配置参数,是否获取到满足所述至少两个IO性能目标值的配置参数的步骤及其后续步骤。
9.根据权利要求6所述的服务器,其特征在于,当所述指令被所述服务器执行时,使得所述服务器执行所述根据IO性能目标值,获得所述IO性能目标值对应的配置参数的步骤包括:
根据所述IO性能目标值对应的先验配置参数和所述IO性能目标值,获得所述IO性能目标值对应的配置参数。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如权利要求1-4任一项所述的方法。
CN202211597507.0A 2022-12-12 2022-12-12 终端设备存储系统参数的配置方法、装置和服务器 Active CN116225311B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211597507.0A CN116225311B (zh) 2022-12-12 2022-12-12 终端设备存储系统参数的配置方法、装置和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211597507.0A CN116225311B (zh) 2022-12-12 2022-12-12 终端设备存储系统参数的配置方法、装置和服务器

Publications (2)

Publication Number Publication Date
CN116225311A CN116225311A (zh) 2023-06-06
CN116225311B true CN116225311B (zh) 2023-11-21

Family

ID=86577487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211597507.0A Active CN116225311B (zh) 2022-12-12 2022-12-12 终端设备存储系统参数的配置方法、装置和服务器

Country Status (1)

Country Link
CN (1) CN116225311B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000472A (zh) * 2020-08-11 2020-11-27 苏州浪潮智能科技有限公司 一种高性能服务器gpu性能瓶颈调优方法、装置及存储介质
CN113435534A (zh) * 2021-07-09 2021-09-24 新智数字科技有限公司 一种基于相似度度量的数据异构处理方法、装置、计算机设备及计算机可读存储介质
CN113687780A (zh) * 2021-07-30 2021-11-23 济南浪潮数据技术有限公司 分布式存储服务端QoS优化方法、系统、终端及存储介质
CN114371811A (zh) * 2020-10-15 2022-04-19 伊姆西Ip控股有限责任公司 用于存储管理的方法、电子设备和计算机程序产品
CN114415945A (zh) * 2021-12-28 2022-04-29 航天科工网络信息发展有限公司 一种分布式存储系统的参数调优方法、系统、设备、介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI625682B (zh) * 2017-12-01 2018-06-01 財團法人工業技術研究院 參數最佳化方法、裝置以及非暫態電腦可讀取媒體
US11068943B2 (en) * 2018-10-23 2021-07-20 International Business Machines Corporation Generating collaborative orderings of information pertaining to products to present to target users

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000472A (zh) * 2020-08-11 2020-11-27 苏州浪潮智能科技有限公司 一种高性能服务器gpu性能瓶颈调优方法、装置及存储介质
CN114371811A (zh) * 2020-10-15 2022-04-19 伊姆西Ip控股有限责任公司 用于存储管理的方法、电子设备和计算机程序产品
CN113435534A (zh) * 2021-07-09 2021-09-24 新智数字科技有限公司 一种基于相似度度量的数据异构处理方法、装置、计算机设备及计算机可读存储介质
CN113687780A (zh) * 2021-07-30 2021-11-23 济南浪潮数据技术有限公司 分布式存储服务端QoS优化方法、系统、终端及存储介质
CN114415945A (zh) * 2021-12-28 2022-04-29 航天科工网络信息发展有限公司 一种分布式存储系统的参数调优方法、系统、设备、介质

Also Published As

Publication number Publication date
CN116225311A (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
CN109783028A (zh) I/o调度的优化方法、装置、存储介质及智能终端
CN110869909B (zh) 应用机器学习算法来计算健康分数以进行工作负载调度的系统和方法
CN112631415B (zh) Cpu频率调整方法、装置、电子设备及存储介质
CN107911491A (zh) 信息推荐方法、装置及存储介质、服务器和移动终端
CN113377540A (zh) 集群资源调度方法及装置、电子设备和存储介质
Caviglione et al. Deep reinforcement learning for multi-objective placement of virtual machines in cloud datacenters
CN111143039B (zh) 一种虚拟机的调度方法、装置及计算机存储介质
Han et al. Performance improvement of Linux CPU scheduler using policy gradient reinforcement learning for Android smartphones
CN113850394B (zh) 联邦学习方法、装置、电子设备及存储介质
CN117271100B (zh) 算法芯片集群调度方法、装置、计算机设备和存储介质
CN116684330A (zh) 基于人工智能的流量预测方法、装置、设备及存储介质
CN112887371B (zh) 边缘计算方法、装置、计算机设备及存储介质
CN114818913A (zh) 决策生成方法和装置
CN116225311B (zh) 终端设备存储系统参数的配置方法、装置和服务器
CN113778675A (zh) 一种基于面向区块链网络的计算任务分配系统及方法
CN114356512A (zh) 一种数据处理方法、设备以及计算机可读存储介质
CN116339932A (zh) 资源调度方法、装置和服务器
CN112288457A (zh) 基于多模型计算融合的数据处理方法及装置、设备和介质
CN111598390A (zh) 服务器高可用性评估方法、装置、设备和可读存储介质
CN112766698B (zh) 应用业务压力确定方法及装置
CN117891618B (zh) 人工智能模型训练平台的资源任务处理方法及装置
CN112887219B (zh) 报文组包间隔调整方法及装置
CN117574111B (zh) 基于场景状态的bms算法选择方法、装置、设备和介质
CN116594762A (zh) 针对动态计算图提前调度的方法和装置
CN117032978A (zh) 额度动态调拨方法、装置、存储介质、产品及电子设备

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