CN115269353A - 服务器的能耗压测方法、装置、电子设备及存储介质 - Google Patents

服务器的能耗压测方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115269353A
CN115269353A CN202210941560.1A CN202210941560A CN115269353A CN 115269353 A CN115269353 A CN 115269353A CN 202210941560 A CN202210941560 A CN 202210941560A CN 115269353 A CN115269353 A CN 115269353A
Authority
CN
China
Prior art keywords
server
energy consumption
tested
different loads
model
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.)
Pending
Application number
CN202210941560.1A
Other languages
English (en)
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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202210941560.1A priority Critical patent/CN115269353A/zh
Publication of CN115269353A publication Critical patent/CN115269353A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3452Performance evaluation by statistical analysis
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Probability & Statistics with Applications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种服务器的能耗压测方法、装置、电子设备及存储介质,方法包括:提取待压测服务器的系统资源参数;其中,所述系统资源参数表征所述待压测服务器的结构;基于所述系统资源参数构建所述待压测服务器的服务器模拟模型;根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测。本申请实施例的技术方案可精确统计待压测服务器内的能耗。

Description

服务器的能耗压测方法、装置、电子设备及存储介质
技术领域
本申请属于计算机技术领域,具体而言,涉及一种服务器的能耗压测方法、装置、电子设备及存储介质。
背景技术
对服务器进行能耗压测能测试服务器性能的稳定性与优劣,现有的服务器能耗压测方式大多通过SPECPower2008(一种通过java服务器端商业模型来测试服务器的能效的方式,Java,一种计算机编程语言)衡量测试服务器的能耗。
而由于SPECPower2008采用的JAVA服务器运算,因此在在满载运行时候占用非常多CPU(Central Processing Unit,中央处理器)资源,属于CPU计算密集型任务,即其压测时仅考虑CPU消耗高,无法检测磁盘运行时所带来的功耗,而服务器内磁盘占用率高导致磁盘功耗高,因此,采用SPECPower2008进行压测会导致压测结果存在误差,无法准确的检测服务器的能耗。
发明内容
为解决上述技术问题,本申请的实施例提供了一种服务器的能耗压测方法及装置、电子设备、计算机可读存储介质。
根据本申请实施例的一个方面,提供了一种服务器的能耗压测方法,包括提取待压测服务器的系统资源参数;其中,所述系统资源参数表征所述待压测服务器的结构;基于所述系统资源参数构建所述待压测服务器的服务器模拟模型;根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测。
在一实施例中,在所述提取待压测服务器的系统资源参数之前,所述方法还包括:
分别检测多个服务器的磁盘数量;
将磁盘数量大于预设阈值的服务器作为待压测服务器。
在一实施例中,所述提取待压测服务器的系统资源参数,包括:
在运行高峰期实时捕捉所述待压测服务器的资源使用数据,得到日志信息;
从所述日志信息中提取所述待压测服务器的系统资源参数。
在一实施例中,所述根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测,包括:
基于预设的不同负载运行所述服务器模拟模型,得到所述模型服务器模型在不同负载下的能耗数据;
根据所述模型服务器模型在不同负载下的能耗数据计算所述待压测服务器的能耗。
在一实施例中,所述基于预设的不同负载运行所述服务器模拟模型,得到所述模型服务器模型在不同负载下的能耗数据,包括:
调整所述模拟服务器系统的线程数以及队列深度,以使所述服务器模拟模型处于不同的负载;
在所述服务器模拟模型处于不同负载下,分别向所述服务器模拟模型发送读写请求,记录所述模型服务器模型在不同负载下的能耗数据。
在一实施例中,所述能耗数据包括性能值和功耗值;所述根据所述模型服务器模型在不同负载下的能耗数据计算所述待压测服务器的能耗,包括:
根据所述模型服务器模型在不同负载下的性能值和功耗值计算不同负载下的能耗比;
基于不同负载下的能耗比计算所述模型服务器模型在不同负载下的平均能耗比。
在一实施例中,所述调整所述模拟服务器系统的线程数以及队列深度,以使所述服务器模拟模型处于不同的负载,包括:
调整所述模拟服务器系统的线程数以及队列深度,使得所述服务器模拟模型处于最大性能负载下;
以所述服务器模拟模型处于最大性能负载下的线程数以及队列深度为基准参数,分别降低所述模拟服务器系统的线程数以及队列深度,得到不同负载下的服务器模拟模型。
根据本申请实施例的一个方面,提供了一种服务器的能耗压测装置,包括:系统资源参数获取模块,配置为提取待压测服务器的系统资源参数;其中,所述系统资源参数表征所述待压测服务器的结构;模型构建模块,配置为基于所述系统资源参数构建所述待压测服务器的服务器模拟模型;压测模块,配置为根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测。
根据本申请实施例的一个方面,提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如上所述的服务器的能耗压测方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的服务器的能耗压测方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的服务器的能耗压测方法。
在本申请的实施例所提供的技术方案中,通过实时采集待压测服务器高峰期系统资源并生成服务器模拟模型,将服务器模拟模型压测得到的能耗作为待压测服务器的能耗,以此可精确统计待压测服务器内的能耗。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本申请涉及的一种实施环境的示意图;
图2是本申请的一示例性实施例示出的服务器的能耗压测方法流程图;
图3是图2所示实施环境的本申请的服务器的能耗压测方法过程图;
图4是本申请的一示例性实施例示出的服务器的能耗压测方法的流程图;
图5是图2所示实施例中的步骤S250在一示例性实施例中的流程图;
图6是本申请的一示例性实施例示出的性能值与功耗值的对比坐标图;
图7是本申请的一示例性实施例示出的服务器的能耗压测装置的结构示意图;
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
还需要说明的是:在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以下将对本申请实施例提出的服务器的能耗压测方法及装置、电子设备、存储介质进行详细说明。
首先请参阅图1,图1是本申请涉及的一种实施环境的示意图。该实施环境包括终端100和服务器端200,终端100和服务器端200之间通过有线或者无线网络进行通信。
当然,图1中的服务器端200的数量仅是示例性的,在其他实施例中还可以是其他数量的服务器端200,本实施例中,终端100用于待压测服务器,并将待压测服务器发送至服务器端200,服务器端200对待压测服务器进行能耗压测处理,并将能耗压测处理后得到的数据返回给终端100,以通过终端100自带的显示模块可视化展示。
示例性的,当需要对待压测服务器进行能耗压测时,终端100将待压测服务器发送至服务器端200,其发送的可以是待压测服务器的地址、标识等信息,以便于服务器端200可识别待压测服务器。
服务器端200确定待压测服务器后,提取待压测服务器的系统资源参数;其中,系统资源参数表征待压测服务器的结构;基于系统资源参数构建待压测服务器的服务器模拟模型;根据服务器模拟模型在不同负载下的能耗数据对待压测服务器的进行能耗压测。
当然,待压测服务器的确认可以是服务器端200完成的,即服务器端200先确认待压测服务器,随后将待压测服务器发送至终端100,可通过控制终端100使得终端100分别向服务器端200每次发送一个待压测服务器,在完成一个待压测服务器的压测后进行下一待压测服务器的压测,如此,可通过终端100的控制完成所有待压测服务器的压测处理。
同时,该服务器的能耗压测方法也可单独由服务器端200完成或单独由终端100完成,此处不进行具体限制。
其中,终端100可以是智能手机、平板、笔记本电脑、计算机等任意能够实现数据可视化的电子设备,本处不进行限制。服务器端200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,其中多个服务器可组成一区块链,而服务器为区块链上的节点,服务器端200还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器,本处也不对此进行限制。
图2是根据一示例性实施例示出一种服务器的能耗压测方法的流程图。该服务器的能耗压测方法可应用于图1所示的实施环境,并由该实施环境中的终端100或服务器端100具体执行,应该理解的是,该方法也可以是用于其他的示例性实施环境,并由其它实施环境中的设备具体执行,本实施例不对该方法所适用的实施环境进行限制。
如图2所示,在一示例性实施例中,该方法可以包括步骤S210至步骤S250,详细介绍如下:
步骤S210:提取待压测服务器的系统资源参数。
目前的服务器能耗压测大多通过SPECPower2008完成,但SPECPower2008只考虑CPU消耗,而磁盘在空闲状态也会产生能耗,如某个存储型服务器有12机械硬盘,2块硬盘的功耗都是空闲,该服务器在生产运行环境中,每块盘的功耗都要多10瓦左右,但是在在通过SPECPower2008进行能耗压测时,没有考虑将磁盘的功耗计算进去,所以测试功耗值偏离。
尤其是针对面向数据库及文件应用的存储型服务器,此类服务器一般配置了数量较多的磁盘,磁盘占用率会很高导致磁盘功耗高,这类服务器主要工作负载是IO密集型运算任务,在通过SPECPower2008进行能耗压测时,无法检测到磁盘的能耗,得到的压测结果误差会更大,而采用频繁人工部署各类应用进行服务器能耗压测工作量大且繁琐。
本实施例中的服务器的能耗压测方法是用于服务器的能耗压测场景,特别针对磁盘数量较多、磁盘应用消耗打的存储型服务器,如数据库服务器、数据仓库服务器、文件服务器等。
在一些实施例中,需要对服务器进行能耗压测,此时可检测服务器内的磁盘数量,如磁盘数量较少,则证明该服务器磁盘运行时所带来的性能消耗较少,即可使用SPECpower2008等能耗压测方式对服务器进行压测;如磁盘数量较多,超过预设阈值,即表明该服务器的磁盘运行所带来的性能消耗较大,如使用SPECpower2008等能耗压测方式对服务器进行压测,只能检测服务器CPU消耗,无法检测磁盘运行所带来的功耗,因此,可将将磁盘数量大于预设阈值的服务器作为待压测服务器,使用本实施例所示的将磁盘数量大于预设阈值的服务器作为待压测服务器进行能耗压测。
在确定待压测服务器后,可在待压测服务器上部署性能监控工具,如nmon(一种性能监控工具)等,此处不具体限制,使用能进行服务器性能监控的具体即可,然后通过性能监控工具在待压测服务器运行高峰期过程中实时地捕捉待压测服务器上的系统资源的使用情况,如CPU(Central Processing Unit,中央处理器)使用率、内核统计信息、磁盘I/O(读写)速度、传输和读/写比率等,并生成日志信息。
从日志信息中可分析到待压测服务器的系统资源参数,系统资源参数包括并发线程数、队列深度、数据块大小、I/O行为、读写比例、core(核)绑定、numa(多个core组成numa)绑定等信息,系统资源参数表征待压测服务器的结构。
步骤S230:基于系统资源参数构建待压测服务器的服务器模拟模型。
本实施例中,在确定待压测服务器的系统资源参数后,可基于待压测服务器的系统资源参数生成待预测服务器的服务器模拟模型,复现待压测服务器的真实流量,该服务器模拟模型用于模拟待压测服务器的结构,对服务器模拟模型进行压测可视为对待压测服务器的预测。
步骤S250:根据服务器模拟模型在不同负载下的能耗数据对待压测服务器的进行能耗压测。
在得到服务器模拟模型后,可在压测系统运行该服务器模拟模型,以进行待预测服务器的能耗压测,该压测系统可为常用的服务器能耗压测系统,如FIO系统(一种服务器能耗压测系统),也可为根据需求进行重新构建的服务器能耗压测系统。
具体地,通过调节影响待压测服务器负载的参数来控制服务器模拟模型的负载,并在不同负载下通过压测系统发出不同两级的IO读写请求,以此可获取在不同负载下,服务器模拟模型的能耗,然后根据不同负载下,服务器模拟模型的能耗计算平均能耗,将服务器模拟模型的平均能耗作为待压测服务器的能耗,以此完成待压测服务器的能耗压测。
本实施例提出通过实时采集待压测服务器高峰期系统资源并生成服务器模拟模型,把服务器模拟模型作为性能工作负载应用于服务器能耗测试中,在该能耗压测过程中,不仅统计了CPU运行的能耗,还计算了磁盘运行所带来的功耗,可以有效的评估存储型服务器的能耗,完成IO流量压测,从而提高磁盘运行数据大的存储类服务器的能耗压测效率与正确率,通过能耗压测可科学反映不同服务器的能耗差异、用电量差异等性能。
图3是图2所示实施例中步骤S210在一示例性实施例中的流程图。如图3所示,在一示例性实施例中,该提取待压测服务器的系统资源参数的过程可以包括步骤S310至步骤S330,详细介绍如下:
步骤S310:在运行高峰期实时捕捉待压测服务器的资源使用数据,得到日志信息。
本实施例中系统资源参数的过程可参考图4,通过在待压测服务器内部署性能监控工具,在各待压测服务器运行高峰期过程中,实时地捕捉系统资源的使用情况,包括CPU使用率、内核统计信息、磁盘I/O速度、传输和读/写比率等,并生成日志信息。
步骤S330:从日志信息中提取待压测服务器的系统资源参数。
得到各待压测服务器的日志信息后,可通过日志分析引擎分析日志信息,从日志信息中分别提取各个待压测服务器的系统资源参数。在一具体实施例中,系统资源参数包括并发线程数(线程数)、队列深度、数据块大小、I/O行为、读写比例、core(核)绑定、numa(多个core组成numa)绑定等。
其中,同一待预测服务器的不同的系统资源参数可来源不同的日志表,如并发线程数可从CPU_SUMM表(CPU使用率和内核统计信息表)中分析得到,队列深度DISKBUSY表(磁盘占用率表)中分析得到,数据块大小可从DISKBSIZE表(记录了时间段内每个磁盘的输入输出数据块大小的日志表)中分析得到,读写比例可从SYS_SUMM表(总的读写字节数和读写比例日志表)中分析得到,I/O行为可从CPU_SUMM表(CPU使用率和内核统计信息表)中分析得到,numa节点和core可从CPU_SUMM表(内核统计信息表,该日志表统计了每个core在任意时间点的CPU使用率)中分析得到。
一些系统资源参数可直接从日志表中提取得到,一些资源参数需从日志表中进行分析计算得到;具体地,CPU_SUMM表统计了每个core在任意时间点的CPU使用率,则通过统计CPU使用率在3%以上的core的个数作为线程数。
DISKBUSY表统计每个磁盘的占用率,对不同应占用率,赋予相应的队列深度值,一定范围内,队列深度值越大,占用率越高,如此可分析计算得到各待压测服务器的队列深度。
获取高峰时间段内磁盘IO数据块大小,取最大的数据块,剔除偶发的数据块读写,如此得到数据块大小。SYS_SUMM表记录总的读写字节数和读写比例,通过对比例取整得到读写比例参数。
I/O行为包括:顺序读、顺序写、随机读、随机写、顺序混合读写、随机混合读写;顺序读写CPU使用率较低,随机读写CPU使用率较高,由此可知,整体CPU使用率低,且CPU core活动率很低(一般只有1-2个core在运算)的是顺序读写,CPU core活动率较高(一般有5个以上core在运算)的是随机读写,以此从日志表中分析I/O行为参数。
为了提高磁盘的IO性能和测试稳定性,可以绑定相应的numa节点和core,如此根据内核统计信息表,对于core核使用率一直比较高的,绑定相应的numa节点和core核,以此得到numa节点和core参数。
本实施例中,不同的待压测服务器提取得到对应的系统资源参数,由此,通过各待压测服务器的系统资源参数构建对应待压测服务器的服务器模拟模型。
当然,对于多个待压测服务器可同时进行系统资源参数的提取,对于各自提取得到的系统资源参数分别构建服务器模拟模型,然后基于各自的服务器模拟模型分别进行服务器的能耗压测。
不同的待压测服务器所得到的系统资源参数不同,如下表1至表3分别为一实施例中对某个数据库服务器、数据仓库服务器、文件服务器进行处理所得到的系统资源参数。
参数
并发线程数 16
队列深度 128
数据块大小 8K
IO行为 随机混合读写
读写比例 70%读30%写
core绑定 绑定8个core
numa绑定 绑定numa0
表1
参数
并发线程数 32
队列深度 128
数据块大小 32K
IO行为 随机读
读写比例 100%读
core绑定
numa绑定 绑定numa0
表2
参数
并发线程数 4
队列深度 64
数据块大小 1M
IO行为 顺序混合读写
读写比例 30%读70%写
core绑定
numa绑定
表3
本试试中提出一种系统资源参数获取方式,以通过该方式,可得到表征待压测服务器结构的系统资源参数,后续可通过系统资源参数构建待压测服务器的服务器模拟模型,以此通过服务器模拟模型进行对应待压测服务器的能耗压测,且该能耗压测得到的数据不仅包含CPU的能耗,还能包含磁盘运行所带来的能耗,从而提高磁盘运行数据大的存储类服务器的能耗压测效率与正确率。
图5是图2所示实施例中步骤S250在一示例性实施例中的流程图。如图5所示,在一示例性实施例中,该根据服务器模拟模型在不同负载下的能耗数据对待压测服务器的进行能耗压测的过程可以包括步骤S510至步骤S530,详细介绍如下:
步骤S510:基于预设的不同负载运行服务器模拟模型,得到模型服务器模型在不同负载下的能耗数据。
本实施例中,在生成服务器模拟模型之后,将服务器模拟模型作为性能工作负载应用于服务器能耗压测中,具体可把生成服务器模拟模型的系统资源参数以及对应的值输入到压测系统中,比如FIO或其他压测系统。
如下为将一个服务器模拟模型的系统资源参数写入FIO压测系统中的脚本示例:taskset-c$core(绑定CPU核,影响IO)fio--ioengine=libaio(#io引擎为libaio,即异步引擎,linux内核2.6以后均支持)......--direct=1(#直写,绕过系统缓存加速)--numjobs=8(#线程数,和CPU核数相关,调整影响IO负载)--iodepth=64(#队列深度,调整影响负载)--numa_cpu_nodes=$numa(numa节点)--filename=$device(盘符)--rw=rw=randrw(#读写模式,当前未随机混合,randread为随机读,randwrite为随机写,randrw为随机混合)rwmixread=70(#随机混合读写中读的占比)--bs=4k(#数据块大小)。
通过上述脚本即可运行服务器模拟模型,然后发出不同量级的IO读写请求,并持续一定时间,压测系统记录下该时段内服务器模拟模型的能耗数据,该能耗数据包括性能值和功耗值,即记录该时段内的IO性能数据和系统功耗数据平均值,获取N次的性能值以及N次功耗值。
当然,不同的服务器负载下,同一服务器模拟模型的能耗数据不同,因此还可调整输入压测系统中的参数值以在压测系统中运行不同负载的服务器模拟模型。
本实施例中通过调整系统资源参数的线程数和队列深度来调整服务器模拟模型的负载,如在啊FIO中,--numjobs=x,--iodepth=y,调整x、y的具体值,以此得到不同负载下的服务器模拟模型。
具体地,不同的线程数和队列深度,其所对应的服务器模拟模型的负载不同,如表4为一实施例中服务器模拟模型的线程数和队列深度不同所对应的该服务器模拟模型的负载:
Figure BDA0003784631440000111
表4
从表4中可看出,当调节线程数和队列深度时,可得到不同负载下的服务器模拟模型,当然,表4中提出的方案仅为示例性的,在其他实施例中还可以是其他数值的线程数和队列深度对应一个负载,此处不做具体限制,且具体的调整数值可基于经验参数得到。
本实施例中,调整模拟服务器系统的线程数以及队列深度,以使服务器模拟模型处于不同的负载,然后在一段时间内发出不同量级的IO读写请求,如此即可得到该模拟服务器系统在不同线程下的能耗数据。
如表5,是一实施例中对一模拟服务器系统在不同负载下进行处理所得到的能耗数据。
Figure BDA0003784631440000121
表5
表5中,目标负载为期望调整线程数以及队列深度使得模型服务器模型所处于的负载,实际负载为模型服务器模型实际在对应程数以及队列深度下所处于的负载,性能值为IOPS(Input/Output Operations Per Second,每秒的读写次数),能耗比为性能值与功耗值的比值,其中性能值与功耗值为在一段时间内,对应负载下的平均数据。
参考图6为表5中的性能值与功耗值的对比坐标图,其中,左侧坐标数值为性能值,右侧坐标数值(性能IOPS)为功耗值(平均功耗),横坐标为目标负载,横坐标中的1-6分别对应表5中的负载100%-空闲状态,由此可见,随着负载的降低,性能值与功耗值随之降低,且性能值降低的速率大于功耗值降低的速率,在空闲状态,性能值为0,但功耗值仍存在。
当然,表5中的负载仅为示例性的,在其他实施例中还可以是其他数值下的负载,如50%负载、30%负载等,此处不进行具体限制;本实施例中提出调整线程数以及队列深度以此计算服务器模拟模型处于不同的负载的能耗数据,其服务器模拟模型的负载大小的调整顺序可不受限制,如表5中的100%、80%、60%、40、20%和空闲状态的负载,其可随机调整线程数以及队列深度以得到不同负载下的服务器模拟模型,也可基于预设的顺序进行调整,如从负载由小到大调整,或由大到小调整。
在一具体实施例中,先通过将系统资源参数输入压测系统中测试出服务器模拟模型在最大负载下(最大IO性能负载)的能耗数据,并将出服务器模拟模型在最大负载下的线程数以及队列深度作为基准参数(即100%负载下的线程数以及队列深度值),调整影响IO性能的测试参数(线程数以及队列深度),每N%的负载降低为一个性能负载等级,一直到服务器IO负载空载(即空闲、待机状态),共N个性能负载等级。
步骤S530:根据模型服务器模型在不同负载下的能耗数据计算待压测服务器的能耗。
本实施例中,在得到模型服务器模型在不同负载下的能耗数据后,可根据能耗数据计算待压测服务器的能耗,如可计算不同负载下的能耗比,然后将各负载下的能耗比相加并除以负载的次数,得到平均能耗比,该平均能耗比即为待压测服务器的能耗;或以N次负载下性能值的总和除以N次功耗值的总和,得到最终的能效测试指标即平均能耗比,当然也可以是其他方式计算平均能耗,此处不进行具体限制。
如表5中的平均能耗比即为一实施例中计算出来的对应待压测服务器的能耗。
本实施例中提出通过设置服务器模拟模型处于不同负载,以得到不同负载下的服务器模拟模型的能耗数据,以此计算平均能耗比,并将服务器模拟模型的平均能耗比作为对应待压测服务器的能耗,从而实现对服务器的能耗压测,且得到的能耗数据中包含磁盘运行所带来的能耗以及CPU能耗等,能满足存储型服务器的能耗压测,提高存储型服务器的能耗压测的正确率。
图7是根据一示例性实施例示出的一种服务器的能耗压测装置的结构示意图。如图7所示,在一示例性实施例中,该装置包括:
系统资源参数获取模块710,配置为提取待压测服务器的系统资源参数;其中,系统资源参数表征待压测服务器的结构;
模型构建模块730,配置为基于系统资源参数构建待压测服务器的服务器模拟模型;
压测模块750,配置为根据服务器模拟模型在不同负载下的能耗数据对待压测服务器的进行能耗压测。
本实施例所提出的服务器的能耗压测装置可进行服务器能耗的压测。
在一实施例中,服务器的能耗压测装置还包括:
磁盘检测模块,配置为分别检测多个服务器的磁盘数量;
待压测服务器确认模块,配置为将磁盘数量大于预设阈值的服务器作为待压测服务器。
在一实施例中,系统资源参数获取模块包括:
日志信息获取单元,配置为在运行高峰期实时捕捉待压测服务器的资源使用数据,得到日志信息;
系统资源参数获取单元,配置为从日志信息中提取待压测服务器的系统资源参数。
在一实施例中,压测模块包括:
能耗数据获取单元,配置为基于预设的不同负载运行服务器模拟模型,得到模型服务器模型在不同负载下的能耗数据;
能耗计算单元,配置为根据模型服务器模型在不同负载下的能耗数据计算待压测服务器的能耗。
在一实施例中,能耗数据获取单元包括:
负载调整板块,配置为调整模拟服务器系统的线程数以及队列深度,以使服务器模拟模型处于不同的负载;
能耗数据获取板块,配置为在服务器模拟模型处于不同负载下,分别向服务器模拟模型发送读写请求,记录模型服务器模型在不同负载下的能耗数据。
在一实施例中,能耗数据包括性能值和功耗值;能耗计算单元包括:
能耗比计算板块,配置为根据模型服务器模型在不同负载下的性能值和功耗值计算不同负载下的能耗比;
平均能耗比计算板块,配置为基于不同负载下的能耗比计算模型服务器模型在不同负载下的平均能耗比。
在一实施例中,负载调整板块包括:
最大性能负载调整子板块,配置为调整模拟服务器系统的线程数以及队列深度,使得服务器模拟模型处于最大性能负载下;
负载调整板块,配置为以服务器模拟模型处于最大性能负载下的线程数以及队列深度为基准参数,分别降低模拟服务器系统的线程数以及队列深度,得到不同负载下的服务器模拟模型。
需要说明的是,上述实施例所提供的服务器的能耗压测装置与上述实施例所提供的服务器的能耗压测方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得电子设备实现上述各个实施例中提供的服务器的能耗压测方法。
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统800包括中央处理单元(Central Processing Unit,CPU)801,其可以根据存储在只读存储器(Read-Only Memory,ROM)802中的程序或者从储存部分808加载到随机访问存储器(Random Access Memory,RAM)803中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 803中,还存储有系统操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(Input/Output,I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分807;包括硬盘等的储存部分808;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入储存部分808。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前的服务器的能耗压测方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的服务器的能耗压测方法。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。

Claims (10)

1.一种服务器的能耗压测方法,其特征在于,包括:
提取待压测服务器的系统资源参数;其中,所述系统资源参数表征所述待压测服务器的结构;
基于所述系统资源参数构建所述待压测服务器的服务器模拟模型;
根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测。
2.根据权利要求1所述的方法,其特征在于,在所述提取待压测服务器的系统资源参数之前,所述方法还包括:
分别检测多个服务器的磁盘数量;
将磁盘数量大于预设阈值的服务器作为待压测服务器。
3.根据权利要求1所述的方法,其特征在于,所述提取待压测服务器的系统资源参数,包括:
在运行高峰期实时捕捉所述待压测服务器的资源使用数据,得到日志信息;
从所述日志信息中提取所述待压测服务器的系统资源参数。
4.根据权利要求1所述的方法,其特征在于,所述根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测,包括:
基于预设的不同负载运行所述服务器模拟模型,得到所述模型服务器模型在不同负载下的能耗数据;
根据所述模型服务器模型在不同负载下的能耗数据计算所述待压测服务器的能耗。
5.根据权利要求4所述的方法,其特征在于,所述基于预设的不同负载运行所述服务器模拟模型,得到所述模型服务器模型在不同负载下的能耗数据,包括:
调整所述模拟服务器系统的线程数以及队列深度,以使所述服务器模拟模型处于不同的负载;
在所述服务器模拟模型处于不同负载下,分别向所述服务器模拟模型发送读写请求,记录所述模型服务器模型在不同负载下的能耗数据。
6.根据权利要求4所述的方法,其特征在于,所述能耗数据包括性能值和功耗值;所述根据所述模型服务器模型在不同负载下的能耗数据计算所述待压测服务器的能耗,包括:
根据所述模型服务器模型在不同负载下的性能值和功耗值计算不同负载下的能耗比;
基于不同负载下的能耗比计算所述模型服务器模型在不同负载下的平均能耗比。
7.根据权利要求5所述的方法,其特征在于,所述调整所述模拟服务器系统的线程数以及队列深度,以使所述服务器模拟模型处于不同的负载,包括:
调整所述模拟服务器系统的线程数以及队列深度,使得所述服务器模拟模型处于最大性能负载下;
以所述服务器模拟模型处于最大性能负载下的线程数以及队列深度为基准参数,分别降低所述模拟服务器系统的线程数以及队列深度,得到不同负载下的服务器模拟模型。
8.一种服务器的能耗压测终端,其特征在于,包括:
系统资源参数获取模块,配置为提取待压测服务器的系统资源参数;其中,所述系统资源参数表征所述待压测服务器的结构;
模型构建模块,配置为基于所述系统资源参数构建所述待压测服务器的服务器模拟模型;
压测模块,配置为根据所述服务器模拟模型在不同负载下的能耗数据对所述待压测服务器的进行能耗压测。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1-7中的任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1-7中的任一项所述的方法。
CN202210941560.1A 2022-08-05 2022-08-05 服务器的能耗压测方法、装置、电子设备及存储介质 Pending CN115269353A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210941560.1A CN115269353A (zh) 2022-08-05 2022-08-05 服务器的能耗压测方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210941560.1A CN115269353A (zh) 2022-08-05 2022-08-05 服务器的能耗压测方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115269353A true CN115269353A (zh) 2022-11-01

Family

ID=83749590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210941560.1A Pending CN115269353A (zh) 2022-08-05 2022-08-05 服务器的能耗压测方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115269353A (zh)

Similar Documents

Publication Publication Date Title
CN113590497A (zh) 业务服务的测试方法、装置、电子设备及存储介质
CN111563014A (zh) 接口服务性能测试方法、装置、设备和存储介质
CN111770002B (zh) 测试数据转发控制方法、装置、可读存储介质和电子设备
CN110059068B (zh) 一种分布式存储系统中的数据校验方法及数据校验系统
CN113886162B (zh) 一种计算设备性能测试方法、计算设备及存储介质
CN110968495A (zh) 一种容器云平台性能评估方法及装置
CN110297743B (zh) 一种负载测试方法、装置和存储介质
CN113127356A (zh) 压测方法、装置、电子设备及存储介质
CN115827436A (zh) 数据处理方法、装置、设备及存储介质
CN115794570A (zh) 压力测试方法、装置、设备及计算机可读存储介质
CN111913861A (zh) 物联网系统的性能测试方法、装置、设备及介质
CN116450483A (zh) 一种确定软件分配的负载的方法、装置、服务器及介质
CN115269353A (zh) 服务器的能耗压测方法、装置、电子设备及存储介质
CN113676377B (zh) 基于大数据的在线用户数评估方法、装置、设备及介质
CN115811483A (zh) 一种网络状态监测方法、装置、电子设备和存储介质
CN114490405A (zh) 资源需求量确定方法、装置、设备及存储介质
CN111598390B (zh) 服务器高可用性评估方法、装置、设备和可读存储介质
CN109857632B (zh) 测试方法、装置、终端设备及可读存储介质
CN108073502B (zh) 一种测试方法及其系统
Guo et al. Learning-based characterizing and modeling performance bottlenecks of big data workloads
CN117056239B (zh) 测试功能使用特征的确定方法、装置、设备及存储介质
CN114138619A (zh) 软件并发运行数量测试方法及装置
CN117596187B (zh) 一种基于多云平台的服务器运维方法、装置、设备及介质
US20230236922A1 (en) Failure Prediction Using Informational Logs and Golden Signals
CN112749724B (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