CN116340008B - Ssd功耗控制参数的定标方法、装置、存储介质及系统 - Google Patents
Ssd功耗控制参数的定标方法、装置、存储介质及系统 Download PDFInfo
- Publication number
- CN116340008B CN116340008B CN202310618309.6A CN202310618309A CN116340008B CN 116340008 B CN116340008 B CN 116340008B CN 202310618309 A CN202310618309 A CN 202310618309A CN 116340008 B CN116340008 B CN 116340008B
- Authority
- CN
- China
- Prior art keywords
- power consumption
- ssd
- target
- state
- scaling
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000003860 storage Methods 0.000 title claims abstract description 35
- 238000012360 testing method Methods 0.000 claims abstract description 70
- 238000004519 manufacturing process Methods 0.000 claims abstract description 19
- 230000008859 change Effects 0.000 claims abstract description 14
- 238000005070 sampling Methods 0.000 claims description 40
- 238000012986 modification Methods 0.000 claims description 20
- 230000004048 modification Effects 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 7
- 239000000758 substrate Substances 0.000 claims 1
- 238000011161 development Methods 0.000 abstract description 7
- 238000013500 data storage Methods 0.000 abstract description 2
- 238000013403 standard screening design Methods 0.000 description 206
- 238000005259 measurement Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 101100045541 Homo sapiens TBCD gene Proteins 0.000 description 2
- 101150093640 SSD1 gene Proteins 0.000 description 2
- 101100111629 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR2 gene Proteins 0.000 description 2
- 102100030290 Tubulin-specific chaperone D Human genes 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1048—Data bus control circuits, e.g. precharging, presetting, equalising
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2227—Standby or low power modes
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
本发明涉及数据存储技术领域,提供了一种SSD功耗控制参数的定标方法、装置、存储介质及系统,该方法包括在SSD的生产阶段,当接收到功耗测试模式启动命令时,控制SSD进入功耗测试模式;在功耗测试模式下,根据功耗状态切换命令控制SSD改变功耗状态至目标功耗状态,并在执行不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;当接收到功耗测试模式退出命令时,将功耗定标参数保存至SSD的非易失存储区域。本发明简化了功耗控制参数的定标流程,提高了开发效率、生产效率和功耗控制参数的定标精度。
Description
技术领域
本发明涉及数据存储技术领域,尤其涉及一种SSD功耗控制参数的定标方法、装置、存储介质及系统。
背景技术
NVMe SSD 是一种基于non-volatile memory express接口规范的固态硬盘,相比普通机械硬盘具有高性能和低延时的特点。通常NVMe SSD 都会提供功耗控制的功能,在NVMe接口规范中也定义了功耗控制的相关规范,目的是为了最大功耗限制及配置不同的power state(功耗状态),主要涉及了下面两个部分:
1、定义SSD支持的功耗状态数量及其属性特征。
2、SSD如果支持自动功耗状态切换,可以根据SSD的忙闲程度自动选择合适的功耗状态。
基于上述功耗控制协议,用户可以控制SSD的最大功耗范围,从而可以根据实际的应用情况而选择不同的功耗状态。例如为了获取最优的性能,可以使用最大功耗的功耗状态。同样,如果对功耗敏感而对性能不敏感,完全可以选择使用最小功耗的功耗状态。对于功耗敏感的场景常见于SSD服务器上能承载的总功耗有限制,如果超出承载功耗服务器可能就会出现故障。
另外,有些SSD可以支持自动切换功耗状态,这样根据SSD自身workload(工作负载)自动切换到相应功耗的功耗状态下,在不损失性能的情况下可以有效地降低SSD的平均使用功耗,与此同时,也会有效降低SSD的综合温度,更加有利于数据的安全性及延长SSD的使用寿命。
从上述可以看出,功耗控制对于SSD是很重要的一个部分,精确有效地进行功耗控制是功耗状态切换环节非常重要的基础。
通常,SSD在控制进入一定的功耗状态时,需要控制功耗控制参数来实现对SSD的功耗控制,功耗控制参数的定标通常要经过一个比较复杂的过程,现有的技术方案通常是在SSD固件开发阶段,针对不同型号的SSD盘(例如容量不同、接口型号不同、使用的DRAM不同等)进行系统测试,在不同的功耗状态下,尝试修改固件采用不同的功耗控制参数来控制SSD功耗,同时使用功率计等手段测量出SSD的功耗值,再根据这些测试结果最终确定出在各功耗状态下需要用的功耗定标参数及不同功耗状态下的功耗定标参数。
这种定标方法不仅操作复杂,而且在每次固件有较大的变动时都需要做一次完整的功耗控制参数定标,否则可能因为继续使用旧的功耗控制参数而影响功耗控制精度的问题。
此外,影响精确控制SSD功耗的还包括SSD的硬件上的个体差异,例如硬件包含不同批次的主控芯片、不同品牌的DRAM及电源控制芯片等,现有技术的定标方法明没有考虑个体差异对于SSD功耗控制的影响,进一步造成了SSD功耗控制的精度偏差。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的SSD功耗控制参数的定标方法、装置、存储介质及系统。
本发明的一个方面,提供了一种SSD功耗控制参数的定标方法,所述方法包括:
在SSD的生产阶段通过PCIe总线建立SSD与主机的通信连接;
当接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;
在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态;
在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;
当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。
进一步地,所述在执行主机下发的不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数包括:
在执行任一具有目标工作负载的读写操作时基于预设的变量修改算法修改SSD的功耗控制参数;
在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合,其中,
所述最优功耗控制参数组合为SSD在当前目标功耗状态下与所述目标工作负载对应的功耗定标参数。
进一步地,所述功耗控制参数包括处理器主频率、NAND读写擦并发命令数量和FTL读写并发命令数量中的至少一项。
进一步地,所述基于预设的变量修改算法修改SSD的功耗控制参数包括:
以优先级大小排序依次为FTL读写并发命令数量、NAND读写擦并发命令数量和处理器主频率的顺序修改所述功耗控制试变量中的一项或多项。
进一步地,所述在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合包括:
以预设的采样时间间隔对SSD的实际功耗进行采样;
计算在预设的采样时长中SSD的实际平均功耗;
在修改功耗控制参数获得的多组功耗控制参数组合中选取实际平均功耗最接近所述目标功耗状态对应的预期平均功耗的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
进一步地,所述在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合包括:
以预设的采样时间间隔对SSD的实际功耗进行采样;
在修改功耗控制参数获得的多组功耗控制参数组合中选取每次采样获得的SSD的实际功耗中的最大功耗小于且最接近预设的目标功耗状态的预期最大功耗的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
进一步地,所述以预设的采样时间间隔对SSD的实际功耗进行采样包括:
通过SSD内部的功耗测量模块对SSD的实际功耗进行采样;或,
接收主机下发的通过外部功耗测量装置采样获得的SSD的实际功耗。
进一步地,所述方法还包括:
在SSD的运行阶段,若接收到主机下发的第二功耗状态切换命令,则控制SSD改变功耗状态至与所述第二功耗状态切换命令相对应的第二目标功耗状态;
在接收到主机下发的具有第二目标工作负载的读写操作请求时,读取在所述第二目标功耗状态下的与所述第二目标工作负载相对应的功耗定标参数;
根据所述第二功耗定标参数对SSD进行功耗控制。
本发明的另一方面还提供了一种SSD功耗控制参数的定标装置,其特征在于,所述装置包括:
通信模块,用于在SSD的生产阶段通过PCIe总线建立SSD与主机的通信连接;
命令处理模块,用于当接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;
功耗状态控制模块,用于在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态;
自动参数定标模块,用于在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;
存储控制模块,用于当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。
本发明的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述SSD功耗控制参数的定标方法的步骤。
本发明的另一方面还提供了一种SSD功耗控制参数的定标系统,所述系统包括主机和SSD;
所述SSD包括控制器,所述控制器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述SSD功耗控制参数的定标方法的步骤。
所述主机与所述SSD通过PCIe总线通信连接,所述主机上装有生产测试模块,用于在对SSD发送进入功耗测试模式的命令之后,发送改变功耗状态的命令和发送具有不同目标工作负载的读写操作请求以使SSD实现功耗控制参数的定标,并在测试完成后对SSD发送退出功耗测试模式的命令。
本发明实施例提供的SSD功耗控制参数的定标方法、装置、存储介质及系统,通过PCIe总线建立SSD与主机的通信连接并在接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态,并在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个所述目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。本发明能够在SSD的生产阶段对单个SSD进行功耗控制参数定标,解决了因固件算法修改导致重新定标的问题,同时解决了同一型号SSD因个体差异造成的功耗控制精度偏差的问题,简化了功耗控制参数的定标流程,提高了开发效率、生产效率和功耗控制参数的定标精度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提供的SSD功耗控制参数的定标系统的结构示意图;
图2为本发明实施例提供的SSD功耗控制参数的定标方法的流程图;
图3为本发明实施例提出的SSD功耗控制参数的定标装置的结构框图;
图中标记说明:
主机;1.1生成测试模块;2、SSD;2.1功耗控制模块;2.2非易失存储区域;2.3功耗测量模块;3、功耗测量装置;
301、通信模块;302、命令处理模块;303、功耗状态控制模块;304、自动参数定标模块;305、存储控制模块。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
图1示意性地示出了本发明实施例提供了SSD功耗控制参数的定标系统的结构示意图,由图1可知本发明实施例的SSD功耗控制参数的定标系统包括主机1和SSD2,其中主机1中安装有生产测试模块1.1,SSD2与主机1通过PCIe总线建立通信连接。在主机1上安装的生产测试模块1.1用于在SSD2的生产阶段,在SSD2执行功耗控制参数的定标流程时向SSD2发送相应的工作指令,具体包括在对SSD2发送进入功耗测试模式的命令之后,发送改变功耗状态的命令和发送具有不同目标工作负载的读写操作请求以使SSD实现功耗控制参数的定标,并在测试完成后对SSD2发送退出功耗测试模式的命令。
SSD2包括存储控制器,所述存储控制器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述方法的步骤。例如图2所示的步骤S11~S15。或者,所述处理器执行所述计算机程序时实现上述SSD功耗控制参数的定标装置实施例中各模块/单元的功能,例如图3所示的通信模块301、命令处理模块302、功耗状态控制模块303、自动参数定标模块304和存储控制模块305。
进一步地,SSD2包括功耗控制模块2.1、NVM区域(非易失存储区域2.2),其中功耗控制模块2.1用于在对SSD2执行功耗控制参数的定标时接收主机1发送的指令并执行SSD功耗控制参数的定标和在SSD运行过程中实现对SSD的功耗控制。
此外,针对不同的SSD1还可以包括设置在SSD1内部的功耗测量模块2.3,功耗测量模块2.3与功耗控制模块2.1连接,用于对SSD2的实际功耗进行采样将采样结果传输给功耗控制模块2.1。需要说明的是,若SSD2没有内部功耗测量模块2.1,在对SSD2执行功耗控制参数的定标时,通过外部的功耗测量装置3对SSD的实际功耗进行采样,所述外部功耗测量装置3与主机1连接,SSD功耗控制模块2.1通过主机1读取自身的实际功耗采样结果(如附图1中双点划线通路所示的外部功耗接口通路)。
图2示意性示出了本发明一个实施例的SSD功耗控制参数的定标方法的流程图。参照图2,本发明实施例的SSD功耗控制参数的定标具体包括以下步骤:
S11、在SSD的生产阶段通过PCIe总线建立SSD与主机的通信连接。
在本发明实施例中,在SSD的生产阶段而不是在固件开发阶段对单个SSD通过PCIe总线建立SSD与主机的通信连接以执行后续的功耗控制参数的定标方法。相比于传统针对某一型号SSD进行统一功耗控制参数定标,本发明更能进准把控同一型号SSD因不同批次的主控芯片、不同品牌的DRAM及电源控制芯片等因素对功耗控制参数的影响,针对每一个生产的SSD进行有针对性的功耗控制参数定标,其定标精度更高。同时SSD的功耗控制参数定标不受固件开发阶段的固件变动影响而重新定标,进一步提高了SSD的开发效率和生产效率。
S12、当接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式。
S13、在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态。
需要说明的是,根据SSD的具体型号不同,表现为SSD具有多种功耗状态,本发明实施例对SSD的功耗控制参数的定标方法是针对SSD的多种不同功耗状态均可以确定相对应的功耗定标参数。其中功耗状态切换命令可以为将SSD当前功耗状态上调一级或下调一级,也可以为将功耗状态切换到指定的目标功耗状态。
S14、在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;
在本发明实施例中,所述在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数包括:在执行任一具有目标工作负载的读写操作时基于预设的变量修改算法修改SSD的功耗控制参数;在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合,其中,所述最优功耗控制参数组合为SSD在当前目标功耗状态下与所述目标工作负载对应的功耗定标参数。需要说明的是,不同目标工作负载具体包括需要执行的读写操作的数量,以及相应的读写操作的占比等。
进一步地,SSD通过调节功耗控制参数来控制SSD的功耗,具体的影响SSD功耗的因素括以下几种:
1.处理器主频率。通常频率越高,SSD的处理性能就越强,功耗就越大。
2.NAND 读写擦调度策略。该策略决定了NAND的调度,例如NAND die的并发数量控制,NAND读写擦并发命令数量等。每个功耗状态下,这些参数将会不同。
3.FTL(Flash Translation Layer)对主机读写请求的调度策略。FTL控制了如何处理主机的读写请求,减少读写请求则会有效控制对NAND的读写擦操作,从而控制SSD的功耗。
因此,在本发明实施例中,所述功耗控制参数包括处理器主频率、NAND读写擦并发命令数量和FTL读写并发命令数量中的至少一项。
进一步地,由于在修改功耗控制参数的同时还要保证SSD的总体性能,因此在对SSD功耗控制参数进行修改时需要确定修改的优先级顺序,具体地,所述基于预设的变量修改算法修改SSD的功耗控制参数包括:以优先级大小排序依次为FTL读写并发命令数量、NAND读写擦并发命令数量和处理器主频率的顺序修改所述功耗控制试变量中的一项或多项。即在改变SSD的控制变量时优先修改FTL读写并发命令数量,再修改NAND读写擦并发命令数量,最后修改处理器频率,以找到最优功耗控制参数组合。需要说明的是,在每次修改时可以根据为各个功耗控制参数设定专属的固定修改步长,也可以根据需要逐渐改变各个功耗控制参数的修改步长,对此本发明不做具体限定。
进一步地,在本发明实施例中具体通过SSD的实际功耗的平均值和瞬时最高值与SSD在当前功耗状态下的预期平均功耗和/或预期最高功耗阈值的大小关系确定SDD在当前功耗状态下与目标工作负载相对应的功耗定标参数。
其中nvme协议规定的功耗状态对应的功耗是平均功耗AvgPower,功耗定标参数就是要找到低于协议规定的这个平均功耗的一预期平均功耗,例如协议规定power state 0对应的平均功耗为25w,那么我们功耗定标参数对应的SSD的实际平均功耗就会比25w要略低一些,例如定到24.5w。即预期平均功耗为当前目标功耗状态对应的平均功耗减去一定的功耗阈值,这样可以确保不会超过25w。其中功耗阈值的确定可以根据需要设定。
进一步地,最高功耗指瞬态功耗MaxPower,虽然MaxPower在nvme协议里没有规定,但在一些其他协议和或在实际应用中为了保证SSD的性能,会对最大功耗做一定的限制,以平均功耗为25w 功耗状态为例,预期MaxPower比平均功耗可能要高出20%,即预期MaxPower不能超过1.20*25w = 30w。即预期最高功耗阈值为目标功耗状态对应的平均功耗乘以一定的比例系数,其中比例系数的确定合理根据需要设定。
因此在本发明实施例中,在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合包括:以预设的采样时间间隔对SSD的实际功耗进行采样;计算在预设的采样时长中SSD的实际平均功耗;在修改功耗控制参数获得的多组功耗控制参数组合中选取实际平均功耗最接近所述目标功耗状态对应的预期平均功耗的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
进一步地,本发明实施例的在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合还包括:以预设的采样时间间隔对SSD的实际功耗进行采样;在修改功耗控制参数获得的多组功耗控制参数组合中选取每次采样获得的SSD的实际功耗中最大功耗小于且最接近预设的目标功耗状态的预期最大功耗阈值的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。需要说明的是本发明实施例中所说的小于且最接近预设的目标功耗状态的预期最大功耗阈值包括等于目标功耗状态的预期最大功耗阈值的情况。
进一步地,通过上述实施例可知,所述预设的采样时间间隔对SSD的实际功耗进行采样包括:通过SSD内部的功耗测量模块SSD的实际功耗进行采样;或,接收主机下发的通过外部的功耗测量装置采样获得的SSD的实际功耗。
S15、当接收到主机下发的功耗测试模式退出命令时,将所述目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。
在本发明实施例中,功耗定标参数的具体保存到SSD的非易失存储区域的定标参数存储区域。
进一步地,当SSD在实际运行时可以通过读取SSD的非易失性存储区域中的功耗定标参数来控制SSD的读写操作,具体地控制方法包括:在SSD的运行阶段,若接收到主机下发的第二功耗状态切换命令,则控制SSD改变功耗状态至与所述第二功耗状态切换命令相对应的第二目标功耗状态;在接收到主机下发的具有第二目标工作负载的读写操作请求时,读取在所述第二目标功耗状态下的与所述第二目标工作负载相对应的功耗定标参数;根据所述第二功耗定标参数对SSD进行功耗控制。其中,功耗定标参数读取时SSD通过非易失存储区域的定标参数存储区域读取获得的。
此外,需要说明的是若SSD在实际运行是具有或者打开了自动功耗状态切换命令,本发明实施例在SSD的实际运行过程中还包括根据需要执行的读写操作的工作负载选择SSD的功耗状态,以实现SSD的自动功耗状态切换。
图3示意性示出了本发明实施例的SSD功耗控制参数的定标装置的结构示意图。参照图3,本发明实施例的SSD功耗控制参数的定标装置具体包括通信模块301,命令处理模块302、功耗状态控制模块303、自动参数定标模块304和存储控制模块305,其中:
通信模块301,用于在SSD的生产阶段通过PCIe总线建立SSD与主机的通信连接;
命令处理模块302,用于当接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;
功耗状态控制模块303,用于在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态;
自动参数定标模块304,用于在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;
存储控制模块305,用于当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。
进一步地,所述自动参数定标模块303包括:
变量修改单元,用于在执行任一具有目标工作负载的读写操作时基于预设的变量修改算法修改SSD的功耗控制参数;
参数确定单元,用于在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合,其中,所述最优功耗控制参数组合为SSD在当前目标功耗状态下与所述目标工作负载对应的功耗定标参数。
进一步地,所述参数确定单元具体包括:
采样子单元,用于以预设的采样时间间隔对SSD的实际功耗进行采样;
计算子单元,用于计算在预设的采样时长中SSD的实际平均功耗;
筛选子单元,用于在修改功耗控制参数获得的多组功耗控制参数组合中选取实际平均功耗最接近所述目标功耗状态对应的预期平均功耗的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
进一步地,所述筛选子单元还用于在修改功耗控制参数获得的多组功耗控制参数组合中选取每次采样获得的SSD的实际功耗中的最大功耗小于且最接近预设的目标功耗状态的预期最大功耗阈值的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
进一步地,所述采样子单元,具体用于通过SSD内部的功耗测量模块SSD的实际功耗进行采样;或,接收主机下发的通过外部的功耗测量装置采样获得的SSD的实际功耗。
进一步地,所述功耗状态控制模块303,还用于在SSD的运行阶段,若接收到主机下发的第二功耗状态切换命令,则控制SSD改变功耗状态至与所述第二功耗状态切换命令相对应的第二目标功耗状态;
所述装置还包括:
参数读取模块,用于在接收到主机下发的具有第二目标工作负载的读写操作请求时,读取在所述第二目标功耗状态下的与所述第二目标工作负载相对应的功耗定标参数;
功耗控制执行模块,用于根据所述第二功耗定标参数对SSD进行功耗控制。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
此外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述方法的步骤。
本实施例中,所述SSD设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
本发明实施例提供的SSD功耗控制参数的定标方法、装置、存储介质及系统,通过PCIe总线建立SSD与主机的通信连接并在接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态,并在执行主机下发的在不同目标工作负载状态下的读写操作请求时测试SSD在所述目标功耗状态下的功耗定标参数;当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个所述目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。本发明能够在SSD的生产阶段对单个SSD进行功耗控制参数定标,解决了因固件算法修改导致重新定标的问题,同时解决了同一型号SSD因个体差异造成的功耗控制精度偏差的问题,简化了功耗控制参数的定标流程,提高了开发效率、生产效率和功耗控制参数的定标精度。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种SSD功耗控制参数的定标方法,其特征在于,所述方法包括:
在SSD的生产阶段通过PCIe总线建立SSD与主机的通信连接;
当接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;
在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态;
在执行任一具有目标工作负载的读写操作时基于预设的变量修改算法修改SSD的功耗控制参数;
在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合,其中,所述最优功耗控制参数组合为SSD在当前目标功耗状态下与所述目标工作负载对应的功耗定标参数;
当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。
2.根据权利要求1所述的方法,其特征在于,
所述功耗控制参数包括处理器主频率、NAND读写擦并发命令数量和FTL读写并发命令数量中的至少一项。
3.根据权利要求2所述的方法,其特征在于,所述基于预设的变量修改算法修改SSD的功耗控制参数包括:
以优先级大小排序依次为FTL读写并发命令数量、NAND读写擦并发命令数量和处理器主频率的顺序修改所述功耗控制试变量中的一项或多项。
4.根据权利要求1所述的方法,其特征在于,所述在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合包括:
以预设的采样时间间隔对SSD的实际功耗进行采样;
计算在预设的采样时长中SSD的实际平均功耗;
在修改功耗控制参数获得的多组功耗控制参数组合中选取实际平均功耗最接近所述目标功耗状态对应的预期平均功耗的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
5.根据权利要求1所述的方法,其特征在于,所述在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合包括:
以预设的采样时间间隔对SSD的实际功耗进行采样;
在修改功耗控制参数获得的多组功耗控制参数组合中选取每次采样获得的SSD的实际功耗中的最大功耗小于且最接近预设的目标功耗状态的预期最大功耗的功耗控制参数组合作为SSD在当前目标工作负载下进行读写操作的最优功耗控制参数组合。
6.根据权利要求4或5所述的方法,其特征在于,所述以预设的采样时间间隔对SSD的实际功耗进行采样包括:
通过SSD内部的功耗测量模块对SSD的实际功耗进行采样;或,
接收主机下发的通过外部功耗测量装置采样获得的SSD的实际功耗。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
在SSD的运行阶段,若接收到主机下发的第二功耗状态切换命令,则控制SSD改变功耗状态至与所述第二功耗状态切换命令相对应的第二目标功耗状态;
在接收到主机下发的具有第二目标工作负载的读写操作请求时,读取在所述第二目标功耗状态下的与所述第二目标工作负载相对应的功耗定标参数;
根据第二功耗定标参数对SSD进行功耗控制。
8.一种SSD功耗控制参数的定标装置,其特征在于,所述装置包括:
通信模块,用于在SSD的生产阶段通过PCIe总线建立SSD与主机的通信连接;
命令处理模块,用于当接收到主机下发的功耗测试模式启动命令时,控制SSD进入功耗测试模式;
功耗状态控制模块,用于在功耗测试模式下,根据主机下发的功耗状态切换命令控制SSD改变功耗状态至与所述功耗状态切换命令相对应的目标功耗状态;
变量修改单元,用于在执行任一具有目标工作负载的读写操作时基于预设的变量修改算法修改SSD的功耗控制参数;
参数确定单元,用于在每次修改完SSD的功耗控制参数之后获取SSD的实际功耗,并根据SSD的实际功耗与目标功耗状态对应的预期功耗的大小关系确定SSD在当前目标工作负载状态下的最优功耗控制参数组合,其中,所述最优功耗控制参数组合为SSD在当前目标功耗状态下与所述目标工作负载对应的功耗定标参数;
存储控制模块,用于当接收到主机下发的功耗测试模式退出命令时,将测试获得的各个目标功耗状态下的功耗定标参数保存至SSD的非易失存储区域。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-7任一项所述方法的步骤。
10.一种SSD功耗控制参数的定标系统,其特征在于,所述系统包括主机和SSD;
所述SSD包括控制器,所述控制器包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7任一项所述方法的步骤;
所述主机与所述SSD通过PCIe总线通信连接,所述主机上装有生产测试模块,用于在对SSD发送进入功耗测试模式的命令之后,发送改变功耗状态的命令和发送具有不同目标工作负载的读写操作请求以使SSD实现功耗控制参数的定标,并在测试完成后对SSD发送退出功耗测试模式的命令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310618309.6A CN116340008B (zh) | 2023-05-30 | 2023-05-30 | Ssd功耗控制参数的定标方法、装置、存储介质及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310618309.6A CN116340008B (zh) | 2023-05-30 | 2023-05-30 | Ssd功耗控制参数的定标方法、装置、存储介质及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116340008A CN116340008A (zh) | 2023-06-27 |
CN116340008B true CN116340008B (zh) | 2023-08-15 |
Family
ID=86893343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310618309.6A Active CN116340008B (zh) | 2023-05-30 | 2023-05-30 | Ssd功耗控制参数的定标方法、装置、存储介质及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116340008B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109522176A (zh) * | 2017-09-20 | 2019-03-26 | 阿里巴巴集团控股有限公司 | 一种存储系统的监控方法、装置、电子设备及存储介质 |
CN111352786A (zh) * | 2020-03-05 | 2020-06-30 | 苏州浪潮智能科技有限公司 | 一种非易失性存储器功耗测试方法和装置 |
CN115902383A (zh) * | 2023-02-02 | 2023-04-04 | 紫光同芯微电子有限公司 | 一种智能卡的功耗测试方法、装置及相关产品 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11552741B2 (en) * | 2019-05-02 | 2023-01-10 | Lg Electronics Inc. | Method and apparatus for combining UL data with a feedback of DL data in a wireless communication system |
-
2023
- 2023-05-30 CN CN202310618309.6A patent/CN116340008B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109522176A (zh) * | 2017-09-20 | 2019-03-26 | 阿里巴巴集团控股有限公司 | 一种存储系统的监控方法、装置、电子设备及存储介质 |
CN111352786A (zh) * | 2020-03-05 | 2020-06-30 | 苏州浪潮智能科技有限公司 | 一种非易失性存储器功耗测试方法和装置 |
CN115902383A (zh) * | 2023-02-02 | 2023-04-04 | 紫光同芯微电子有限公司 | 一种智能卡的功耗测试方法、装置及相关产品 |
Non-Patent Citations (1)
Title |
---|
Richard Kavanagh等.Accuracy of Energy Model Calibration with IPMI.《https://eprints.whiterose.ac.uk/》.2016,第1-9页. * |
Also Published As
Publication number | Publication date |
---|---|
CN116340008A (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9110669B2 (en) | Power management of a storage device including multiple processing cores | |
US11016663B2 (en) | Memory system | |
JP2014110058A (ja) | フラッシュ読取コマンド完了の時間推定に基づくホスト読取コマンドリターンのリオーダリング | |
JP2006516780A (ja) | デバッグの間データ処理システムを制御するための方法および装置 | |
JP2002116930A (ja) | コンピュータシステムパラメータの自動調整により性能を改良する方法 | |
CN111198795A (zh) | 基板控制器获取内存温度的方法以及装置 | |
US8732387B2 (en) | Flash memory apparatus with automatic interface mode switching | |
WO1996028826A1 (fr) | Dispositif a memoire a semiconducteur dote d'une fonction de determination de la deterioration | |
CN114328312B (zh) | 数据处理方法、计算机设备及可读存储介质 | |
CN107919143B (zh) | 固态存储设备及其温度控制方法 | |
CN116340008B (zh) | Ssd功耗控制参数的定标方法、装置、存储介质及系统 | |
US11550737B2 (en) | Adjusting characteristic of system based on profile | |
CN117435416A (zh) | 一种存储器的测试系统及测试方法 | |
US20200286547A1 (en) | Memory system | |
CN112786080B (zh) | 一种降低闪存误码率的方法、装置及固态硬盘 | |
CN111028881B (zh) | 一种Open Block测试装置、方法及系统 | |
TWI387973B (zh) | 資料儲存裝置、資料儲存控制器及相關自動化測試的方法 | |
CN111736680A (zh) | 电源缓启动的控制方法、控制装置、控制设备及存储介质 | |
CN102843272B (zh) | 联网服务器的自动性能和容量测量 | |
US20190033956A1 (en) | Method for determining voltage of processor of terminal, and terminal | |
US20190087299A1 (en) | Memory system and method | |
CN114496058A (zh) | Ssd异常掉电测试方法、装置、存储介质及ssd设备 | |
CN112673364A (zh) | 数据传输方法、数据传输装置、电子设备和存储介质 | |
CN113470731A (zh) | Apst功能的测试方法、装置、可读存储介质及电子设备 | |
KR20230174749A (ko) | 메모리의 동작 주파수 조정 방법, 스마트 단말기 및 저장 매체 |
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 |