CN108228080B - 用于控制硬盘的方法和电子设备 - Google Patents
用于控制硬盘的方法和电子设备 Download PDFInfo
- Publication number
- CN108228080B CN108228080B CN201611192952.3A CN201611192952A CN108228080B CN 108228080 B CN108228080 B CN 108228080B CN 201611192952 A CN201611192952 A CN 201611192952A CN 108228080 B CN108228080 B CN 108228080B
- Authority
- CN
- China
- Prior art keywords
- time
- hard disk
- threshold idle
- spin
- power cycles
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3268—Power saving in hard disk drive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3221—Monitoring of peripheral devices of disk drive devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/20—Driving; Starting; Stopping; Control thereof
- G11B19/26—Speed-changing arrangements; Reversing arrangements; Drive-transfer means therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Power Sources (AREA)
Abstract
本公开的实施例涉及用于控制硬盘的方法和电子设备。具体而言,本公开公开了一种用于控制硬盘的方法,包括确定硬盘在预定时间段内的时间点已完成的功率周期的数目,功率周期包括硬盘在旋转运行模式和紧邻的旋转停止模式中的总时长;以及响应于已完成的功率周期的数目小于预定时间段中的用于硬盘的功率周期的上限数目,确定从该时间点起算的预定时间段的剩余时间,以及基于剩余时间、已完成的功率周期的数目和上限数目,来确定用于控制硬盘进入旋转停止模式的阈值空闲时长。本公开还公开了一种用于控制硬盘的电子设备和用于执行一种用于控制硬盘的方法的步骤的计算机程序产品。
Description
技术领域
本公开的实施例总体上涉及存储技术,更具体地,涉及用于控制硬盘的方法和电子设备。
背景技术
弹性云存储提供了广泛的数据存储。弹性云存储使用软件体系结构和开发中的最新趋势来实现杰出的可扩展性、可用性和性能,并且基于这些可以容易地构建近线存储系统来存储相对冷(即,对该数据的访问相对少)的数据。
对于近线存储系统或者档案存储系统之类的存储系统而言,与系统中的CPU、存储器和其他资源相比,存储资源的密度通常非常高。近年来,固态存储盘(solid storagedisk,SSD)与硬盘(也即硬盘驱动器,HDD)的价格比率急剧下降,然而在它们之间仍然存在每TB数倍的价格差异。因此,为了节省硬件成本,在近线存储系统或者档案存储系统中仍然使用硬盘。硬盘的功率消耗在它们全部处于活动模式中时可能高于整个存储系统的总功率消耗的70%,这一百分比随着系统的不同而不同。
由于硬盘的高功率消耗性,为了节省总功率消耗,节省由硬盘消耗的功率非常重要。进而,为了减少由硬盘消耗的功率,将尽可能多的硬盘在尽可能长的时间内保持在旋转停止模式中非常重要。在旋转停止模式中,硬盘的转速大幅度降低,甚至可以接近停止旋转,从而可以节省由硬盘消耗的功率。与旋转停止模式形成对照,在旋转运行模式中,硬盘以正常的转速正常运作。
发明内容
总体上,本公开的实施例提出了用于控制硬盘的方法和电子设备。
在第一方面,本公开的实施例提供了一种用于控制硬盘的方法。该方法包括:确定所述硬盘在预定时间段内的时间点已完成的功率周期的数目,所述功率周期包括所述硬盘在旋转运行模式和紧邻的旋转停止模式中的总时长;以及响应于所述已完成的功率周期的数目小于所述预定时间段中的用于所述硬盘的所述功率周期的上限数目,确定从所述时间点起算的所述预定时间段的剩余时间,以及基于所述剩余时间、所述已完成的功率周期的数目和所述上限数目,来确定用于控制所述硬盘进入所述旋转停止模式的阈值空闲时长。
在第二方面,本公开的实施例提供了一种电子设备。该电子设备包括:处理器;以及存储器,所述存储器被耦合到所述处理器并且存储有供所述处理器执行的指令,所述指令当由所述处理器执行时,使得所述设备执行动作,所述动作包括:确定硬盘在预定时间段内的时间点已完成的功率周期的数目,所述功率周期包括所述硬盘在旋转运行模式和紧邻的旋转停止模式中的总时长;以及响应于所述已完成的功率周期的数目小于所述预定时间段中的用于所述硬盘的所述功率周期的上限数目,确定从所述时间点起算的所述预定时间段的剩余时间,以及基于所述剩余时间、所述已完成的功率周期的数目和所述上限数目,来确定用于控制所述硬盘进入所述旋转停止模式的阈值空闲时长。
在第三方面,本公开的实施例提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行使得机器执行根据本公开的第一方面的一种用于控制硬盘的方法的步骤。
通过下文描述将会理解,根据本公开的实施例,可以利用用来决定硬盘何时应当进入旋转停止模式以节省功率的自适应方法来解决硬盘功率节省问题。为此,本公开提出了用于自适应地决定何时使硬盘进入旋转停止模式以节省功率消耗的通用方法。通过向基于ECS的近线存储系统应用该通用方法,能够获得与现有技术相比更佳的功率节省。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开各实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1是示出了旋转运行时长、旋转停止时长和功率周期时长的期望值比对针对硬盘的数据读取请求速率的曲线图;
图2示出了在某些实施例中的用于控制硬盘的方法200;
图3示出了在某些实施例中的装置300的框图;
图4示出了可以用来实施本公开的实施例的设备400的框图;
图5示出了当硬盘具有25%的数据填充率时功率节省的对比曲线图;
图6示出了当硬盘具有50%的数据填充率时功率节省的对比曲线图;
图7示出了当硬盘具有75%的数据填充率时功率节省的对比曲线图;以及
图8示出了当硬盘具有100%的数据填充率时功率节省的对比曲线图。
在所有附图中,相同或相似参考数字表示相同或相似元素。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而,应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在此使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”。其他术语的相关定义将在下文描述中给出。
概述
在本公开中,以近线存储系统为例来说明在本公开的某些实施例中的用于控制硬盘的方法和电子设备。应当理解,本公开中所记载的实施例并非仅适用于近线存储系统,而是可以适用于各种存储系统。
对近线存储系统的数据进入(即,对该系统的数据写入)通常被上层系统很好地控制,该上层系统保持较热的数据(即,被访问较多的数据)并且在一些数据变冷(即,对该数据的访问变少)时将它们移动到近线存储系统中,因此数据进入是突发的并且在短窗口中周期性地发生。这意味着用于服务于近线存储系统中的进入流量的硬盘运行时间通常是相对固定的并且难以针对它们进行操作来节省功率。
然而,从近线存储系统的数据外出(即,对该系统的数据读取)通常不是周期性的并且难以控制其发生时间。对于用于构建云的存储系统而言尤其是这样。在该系统中,数据外出流量最终源自连接到云的各种应用,这些数据外出流量取决于终端用户的行为并且完全在云基础结构控制者的控制之外。
对于预测用于近线存储系统的外出负载模式已经进行了许多努力,但是一般而言构建用于负载模式的模型非常困难,并且该模型需要被时常更新,从而导致存在“在线学习”问题。同时,该模型也易于导致与正确或者适当的结果存在很大误差的负载预期。一些其他预测方法则用于帮助非分布式存储系统的设立,如基于CPU使用来预测对磁盘的负载。但是,这些预测方法过于简单从而导致无法解决近线存储系统中所遇到的问题,因为用于进行预测的信息在近线存储系统的例如分布式和分层设立中无法被获得。因此,数据外出负载经常被视为对于近线系统而言不可预测。
如上所述,由于对硬盘的数据写入通常在上层系统的控制下周期性地发生,因此本公开主要考虑数据读取的问题。因此,在随后的内容中并不针对数据写入进行特别考虑,而是主要考虑针对数据读取来控制硬盘。
鉴于负载模式不可预测的这一假设,通常会为硬盘设置固定的阈值空闲时间。如果硬盘在阈值空闲时间结束时没有接收到任何数据读取请求,则使得硬盘进入旋转停止模式,直到下一数据读取请求的到来。在本公开的上下文中,阈值空闲时间的时间长度被称为阈值空闲时长。
然而,在实践中,阈值空闲时长出于一些原因而不能被设置得过短。当硬盘从旋转停止模式被运行时,为了使得硬盘进入旋转运行模式,在短时段内需要消耗高得多的功率。由于过短的阈值空闲时长会导致功率周期的数目过大(即,硬盘在旋转运行模式和旋转停止模式之间的切换过于频繁),因此过短的阈值空闲时长将不能节省功率而反而会消耗更多功率。应当理解,在本公开的上下文中,功率周期是指硬盘从进入旋转运行模式、从该旋转运行模式切换到旋转停止模式并且再次进入旋转运行模式的时间。换言之,功率周期是指硬盘紧接着的一次处于旋转运行模式和一次处于旋转停止模式的时间。应当理解,也可以将硬盘首先一次处于旋转停止模式并且紧接着一次处于旋转运行模式的时间定义为硬盘的功率周期,而不会影响本公开中所记载的用于控制硬盘的方法和电子设备的实现及其效果。
硬盘在其使用寿命中仅能在某一时段中的功率周期的数目低于一定数目时保证硬盘的正常使用寿命。因此,硬盘过于频繁的在旋转运行模式和旋转停止模式之间切换可能导致硬盘过早出现故障,这意味着将由于增加的硬盘替换率而导致高得多的成本。例如,某一设计用于档案系统的硬盘仅保证在每年的功率周期数目小于10,000次时不会增加平均无故障时间(MTBF)。
有鉴于此,阈值空闲时长通常被设置用于控制在一定时间内的最大可能功率周期数目。
因此,本公开中所记载的用于控制硬盘的方法和电子设备主要涉及确定用于控制硬盘进入旋转停止模式的阈值空闲时长。为了易于讨论之目的,以下先完整描述阈值空闲时长的计算方法,而后再分别描述在本公开的某些实施例中的用于控制硬盘的方法和电子设备。
阈值空闲时长的计算方法
在确定阈值空闲时长时,需要考虑可能出现的最坏情况。一般而言,认为最困难的数据读取负载情况是数据读取以固定速率发生,这是因为如果不将数据读取的平均数目保持相同,而是假设针对某一时段的数据读取负载相对轻松,则在该时段中,硬盘将可能有更多的机会进入旋转停止模式并且有可能将旋转停止的时间保持得更长,这总体而言将导致更佳的功率节省。因此,以下基于数据读取以固定速率发生的假设来计算在困难情况下如何确定阈值空闲时长。
假设每个节点具有N个硬盘并且对每个节点的数据读取负载(即,数据读取请求)按照固定间隔T出现。在此使用的术语“节点”可以包括但不限于磁盘阵列。针对每个数据读取请求,将随机地访问N个硬盘中的一个硬盘以服务于该数据读取请求,其中N为大于等于2的自然数。在不失一般性的前提下,假设第一个数据读取请求出现在时间0。此时,对于任何特定硬盘,在时间kT(k是正整数)时,该硬盘被读取的概率是而该硬盘未被读取的概率是
针对前述阈值空闲时长的概念,如果硬盘被设置为在没有接收到数据读取请求的情况下将在mT(m是正整数)的时间之后进入旋转停止模式,则mT即为用于控制该硬盘进入旋转停止模式的阈值空闲时间的阈值空闲时长。由于在任一mT中只要发生读取就将重新计时,因此可以假设硬盘的旋转运行时间(即,硬盘在上一次从旋转停止模式切换到旋转运行模式到下一次进入旋转停止模式之间,处于旋转运行模式的时间)的长度(即,硬盘的旋转运行时长)为umT(u为大于等于1的数),则umT的期望值E(umT)根据以下公式(1)来确定。
在公式(1)的基础上,u的期望值E(u)可以根据以下公式(2)来确定。
根据公式(2)并且通过查看E(u)的泰勒级数,可以很容易地知晓E(u)的值将随着m的增大而增大。由于m即为在与阈值空闲时长mT对应的阈值空闲时间中的每节点数据读取数目,因此公式(2)也符合以下观点,即,如果在阈值空闲时间中每节点数据读取数目增加,则用于硬盘的旋转运行时间的平均持续时间也将更长。
接着,假设硬盘的旋转停止时间(即,硬盘在上一次从旋转运行模式恢复到旋转停止模式到下一次进入旋转运行模式之间,处于旋转停止模式的时间)的长度(即,硬盘的旋转停止时长)为dmT(d为正数)。则dmT的期望值E(dmT)可以根据以下公式(3)来确定。
进而,d的期望值E(d)可以根据以下公式(4)来确定。
可以理解,E(d)的值将随着m的增大而减小,因此公式(4)也符合以下观点,即,如果在阈值空闲时间中每节点读取数目增加,则用于硬盘的旋转停止时间的平均持续时间也将更短。
基于上述针对功率周期长度的期望值的计算公式,可以计算功率周期长度的期望值的最小值,其可以通过函数来计算,其中inf表示求下界运算。由于该函数是凸函数,因此当N的值固定时,很容易知道当时上述函数会达到最小值,也就是说当时上述函数达到最小值,并且此时期望的功率周期长度为mT乘以以下值:很明显地,功率周期长度的期望值随着N的增大而减小,并且其中e是自然常数,即,自然对数的底数。因此,功率周期长度的期望值下界是mT的e倍,此时是最理想的功率周期长度。
换言之,无论硬盘的数据读取负载如何改变,针对一个功率周期时长的期望值的最小值等于用于硬盘进入旋转停止模式的阈值空闲时长的e倍。
图1是示出了旋转运行时长、旋转停止时长和功率周期时长的期望值比对针对硬盘的数据读取请求速率的曲线图,其中其上具有“□”的曲线是旋转运行时长的期望值随针对硬盘的数据读取请求速率增加而变化的曲线图,其上具有“●”的曲线是旋转停止时长的期望值随针对硬盘的数据读取请求速率增加而变化的曲线图,并且其上具有“○”的曲线是功率周期时长的期望值随针对硬盘的数据读取请求速率增加而变化的曲线图。在图1中,横轴的单位为纵轴的单位为硬盘的阈值空闲时长,即,mT。如图1中所示,由于自然常数e的值约为2.71828,因此图1中所示的功率周期时长曲线的最低点(即,最小值)约为e倍的mT。
如上所述,功率周期长度的期望值的下界是e倍的mT,因此对于相对长的时段D,如果硬盘在时段D中可以容忍上至P个功率周期,则P可以被理解为时段D中的功率周期的上限数目,那么通过公式ePmT=D可知,可以将阈值空闲时长设置为最短为此时,从统计学的角度而言,在时段D中发生的功率周期的数目仍然在上限数目P的限制内。如果考虑到近线存储系统无论如何均能够被预期获得相比于最差情况而言较轻的数据读取负责,则阈值空闲时长甚至可以被设置得更短,从而使得在数据读取负载较轻的情况下可以对阈值空闲时长的值进行适当偏置以获得更佳的功率节省效果。然而,这样做的缺点在于:如果存在相对高的数据读取负载,则较短的阈值空闲时长意味着有可能在时段D中产生比P高的功率周期数目。
基于上述分析,本公开中提出的一般想法在于:自适应地调整用于硬盘进入旋转停止模式的阈值空闲时长,这可以通过以下的公式(5)来进行,其中公式(5)是为了确定在时间t时的阈值空闲时长而在[0,D]的区间中所定义的函数。
其中I(t)表示在时间t时的阈值空闲时长,c(t)表示在区间[0,D]中发生的功率周期的数目。在公式(5)中,当c(t)的值已经达到P时,这说明在时段D中已不能允许更多的功率周期,即,不能允许硬盘再次进入旋转停止模式,因此将I(t)的值设置为+∞。这时,在从当前时间t直到时段D结束的过程中磁盘将不会再次进入旋转停止模式,并且因此将不会产生更多的功率周期。换言之,在t∈[0,D]时,c(t)≤P总为真,即,在区间D中所产生的功率周期的数目将不会超过功率周期的上限数目P。
然而,应当理解,以上所述的将I(t)的值设置为+∞仅为示例而非对本公开的实施例的限制,为了达到在从当前时间t直到时段D结束的过程中磁盘将不会再次进入旋转停止模式的效果,也可以仅将I(t)的值设置为大于从当前时间t直到时段D结束的时长。同时,更一般而言,也可以简单地将硬盘设置为在从当前时间t直到时段D结束的过程中不会进入旋转停止模式。
对于I(t)的值,也可以可选地为其设置一个下界,即,预设阈值空闲时长Imin,当在某个时间t时计算出的I(t)的值小于Imin时,可以将I(t)的值设置为Imin。设置Imin的目的在于避免在极端情况下计算出的用于硬盘的阈值空闲时长过短。这些极端情况包括但不限于如下情况:如果在时段D中的某段时间硬盘一直没有接收到读取请求,则在接近时段D结束时,剩余的可使用功率周期数目会较大,这时通过公式(5)确定的I(t)的值可能会较短,从而可能如前所述影响功率节省的效果。
将公式(5)应用于基于ECS的近线存储系统,可以得到以下的公式(6)。
其中Imin表示预设阈值空闲时长,并且λ表示作为缩放因子的系数。λ的值大于等于e。
根据对上述公式(6)以及相关公式的分析可知,考虑到硬盘在开始运行时在整个时段D内可以容忍全部P个功率周期,阈值空闲时长被设置为应对可能出现的最坏情况,此时功率周期时长的期望值等于λ倍的阈值空闲时长。而后,随着时间推移,在硬盘中实际发生的功率周期被计数并且在直到时段D结束时剩余的可容忍功率周期数目为P-c(t)。取决于负载,可以相对于初始计算出的阈值空闲时长(即,阈值空闲时长的初始值)来使功率周期消耗得更快或者更慢,并且可以基于剩余的可容忍功率周期数目来自适应地调整阈值空闲时长。
示例过程
图2示出了在某些实施例中的用于控制硬盘的方法200。在图2中所示出的方法200中,主要涉及确定用于控制硬盘进入旋转停止模式的阈值空闲时长。以下分别针对方法200的动作来详述方法200的具体过程。
注意,在图2中,以虚线示出的框所对应的动作为可选的。也就是说,在某些实施例中,这些动作中的一个或多个可以被省略。而且,在一些实施例中,还可以执行未在图2中示出的某些动作。
如图所示,在202,确定用于控制硬盘进入旋转停止模式的阈值空闲时长的初始值。由于硬盘需要在开始工作后即具有设置好的阈值空闲时长,因此需要在硬盘开始工作时确定阈值空闲时长的初始值。
应当理解,在202处执行的动作是为了确定阈值空闲时长的初始值。由于阈值空闲时长的初始值可以通过预先设置(例如,在硬盘的生产时或者出厂前)默认值的方式进行设置,因此202并非是必须的,并且因此在图2中以虚线示出。例如,当阈值空闲时长的初始值已经被预先设置时,202可以被省略。
在204,确定硬盘在预定时间段D内的时间点t已完成的功率周期的数目。在某些实施例中,可以通过在硬盘或者存储系统中设置计数器的方式来实现204中的动作。每当硬盘在预定时间段D内完成了一次功率周期,计数器的值就加1,从而使得无论在任何t时查看计数器,都可以立刻确定此时已完成的功率周期的数目。
在206,确定已完成的功率周期的数目是否达到上限数目P。根据公式(5)和公式(6)可知,一旦已完成的功率周期的数目达到(等于)上限数目P,就需要进行不同的后续操作,因此206是判断步骤并根据判断结果的不同分别进入208和210。
为了确保已完成的功率周期的数目不超过上限数目P,可以采取至少两种方式来实现。
在一种方式中,可以实时对计数器的值进行监视,一旦计数器的值达到上限数目P,就可以立刻确定已完成的功率周期的数目已经达到上限数目P。
在另一种方式中,可以每隔一段时间来调用计数器的值,为了避免在上述一段时间期间功率周期的数目增长2个或者以上,可以将该一段时间设置的时长设置为小于上一计算出的阈值空闲时长加上前述固定间隔T,这是因为在硬盘经过阈值空闲时长没有接收到硬盘读取请求而进入旋转停止模式中后,至少需要经过固定间隔T才会接收到另一硬盘读取请求,因此在实际操作中,功率周期时长的最小值为上一计算出的阈值空闲时长加上固定间隔T。这时,也可以确保无论何时调用计数器的值,该值都不超过上限数目P。
在206中,如果确定已完成的功率周期的数目已经达到上限数目P,则在208中,通过适当操作来在剩余时间中禁止硬盘进入旋转停止模式。如上所述,可以通过将阈值空闲时长设置为大于剩余时间的长度直至+∞来禁止硬盘在剩余时间中进入旋转停止模式。然而,在某些实施例中,也可以仅通过禁用阈值空闲时长等操作来禁止硬盘在剩余时间中进入旋转停止模式。
另一方面,如果在206中确定已完成的功率周期的数目尚未达到上限数目,则在210中,确定从该时间点t起算的预定时间段D的剩余时间。如上所述,这可以简单地通过D-t来计算,在此不再赘述。
在212中,基于剩余时间、已完成的功率周期的数目和上限数目来确定用于控制硬盘进入旋转停止模式的阈值空闲时长。
由于本公开的控制硬盘的方法旨在于以自适应的方式来调整阈值空闲时长,因此,在确定了在该时间点的阈值空闲时长的值后,返回204以继续确定在随后时间点的阈值空闲时长的值。
可选地,在确定了在该时间点的阈值空闲时长的值后,可以进入214。
在214中,确定在212中确定的阈值空闲时长的值是否小于预设阈值空闲时长Imin。如上所述,设置设阈值空闲时长Imin的目的在于避免在极端情况下计算出的用于硬盘的阈值空闲时长过短。因此,206是判断步骤并根据判断结果的不同分别进入204和216。
在214中,如果确定在212中确定的阈值空闲时长的值小于预设阈值空闲时长Imin,则在216中,将在212中确定的阈值空闲时长的值设置为预设阈值空闲时长Imin。
同时,如上所述,由于本公开的控制硬盘的方法旨在于以自适应的方式来调整阈值空闲时长,因此,在将在212中确定的阈值空闲时长的值设置为预设阈值空闲时长Imin后,返回204以继续确定在随后时间点的阈值空闲时长的值。
另一方面,如果在214中确定在212中确定的阈值空闲时长的值大于或者等于预设阈值空闲时长Imin,则返回204以继续确定在随后时间点的阈值空闲时长的值。
应当理解,在214和216处执行的动作是为了避免如上所述在极端情况下计算出的用于硬盘的阈值空闲时长过短,因此它们并非是必须的,并且因此在图2中以虚线示出。例如,可以出于节省计算成本的目的而不考虑为阈值空闲时长设置预设的最小值。在这些情况下,214和216均可以被省略。
示例装置
图示出了在某些实施例中的装置300的框图。如图3所示,装置300包括:第一确定单元305,被配置为确定硬盘在预定时间段内的时间点已完成的功率周期的数目,该功率周期包括该硬盘在旋转运行模式和紧邻的旋转停止模式中的总时长;以及第二确定单元310,被配置为响应于该已完成的功率周期的数目小于该预定时间段中的用于该硬盘的该功率周期的上限数目,确定从该时间点起算的该预定时间段的剩余时间,以及基于该剩余时间、该已完成的功率周期的数目和该上限数目,来确定用于控制该硬盘进入所述旋转停止模式的阈值空闲时长。
在某些实施例中,装置300还可以包括禁止单元,被配置为响应于所述已完成的功率周期的数目等于所述上限数目,在所述剩余时间中禁止所述硬盘进入所述旋转停止模式。
在某些实施例中,禁止单元还可以包括设置单元,被配置为将所述阈值空闲时长设置为大于所述剩余时间的长度。
在某些实施例中,第二确定单元310还可以包括第三确定单元,被配置为将所述阈值空闲时长确定为:其中I(t)是在所述时间点的所述阈值空闲时长,D是所述预定时间段的总时长,t是所述时间点从所述预定时间段的开始处起算的时长,λ是系数,P是所述上限数目,c(t)是在所述时间点的所述已完成的功率周期的数目。
在某些实施例中,第三确定单元或者第四确定单元中,λ的值可配置。
在某些实施例中,在第三确定单元或者第四确定单元中,所述系数大于等于自然常数e。
在某些实施例中,装置300还可以包括设置单元,被配置为响应于确定的所述阈值空闲时长小于预设阈值空闲时长,将所述空闲阈值时长设置为所述预设阈值空闲时长。
应当理解,装置300中记载的每个单元分别与参考图2描述的方法200中的每个步骤相对应。因此,上文结合图1和图2描述的操作和特征同样适用于装置300以及其中包含的单元,并且具有同样的效果,具体细节不再赘述。
装置300中所包括的单元可以利用各种方式来实现,包括软件、硬件、固件或其任意组合。在一个实施例中,一个或多个单元可以使用软件和/或固件来实现,例如存储在存储介质上的机器可执行指令。除了机器可执行指令之外或者作为替代,装置300中的部分或者全部单元可以至少部分地由一个或多个硬件逻辑组件来实现。作为示例而非限制,可以使用的示范类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD),等等。
图3中所示的装置300的单元可以部分或者全部地实现为硬件模块、软件模块、固件模块或者其任意组合。特别地,在某些实施例中,上文描述的流程、方法或过程可以由基站或者终端设备中的硬件来实现。例如,基站或者终端设备可以利用其发射器、接收器、收发器和/或处理器或控制器来实现方法200。
图4示出了可以用来实施本公开的实施例的设备400的框图。设备400可以用来实现一种电子设备,其例如包括上文描述的电子设备。如图所示,设备400包括中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的计算机程序指令或者从存储单元408加载到随机访问存储器(RAM)403中的计算机程序指令,来执行各种适当的动作和处理。在RAM 403中,还可存储设备400操作所需的各种程序和数据。CPU 401、ROM 402以及RAM403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
在某些实施例中,处理单元401可被配置为执行上文所描述的各个过程和处理,例如方法200。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质(例如,存储单元408)中。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序被加载到RAM 403并由CPU 401执行时,可以执行上文描述的方法200的一个或多个步骤。
根据本公开的一个实施例,还提供了一种计算机程序产品,该计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,该机器可执行指令在被执行使得机器执行根据本公开的方法200的步骤。
实验和效果
图5至图8示出了当硬盘具有不同的数据填充率时功率节省的对比曲线图。在图5至图8中,作为示例的数据填充率分别为25%、50%、75%和100%。在图5至图8中,其上具有“○”的曲线代表以没有应用本申请的自适应阈值空闲时长调整的vanilla系统为例的平均硬盘旋转停止百分比随着每小时的针对硬盘的数据读取请求速率增加而变化的曲线图,其上具有“□”的曲线则代表在应用本申请的自适应阈值空闲时长调整的情况下平均硬盘旋转停止百分比随着每小时的针对硬盘的数据读取请求速率增加而变化的曲线图。
通过参考图5至图8,可以清楚地看到在应用本申请的自适应阈值空闲时长调整的情况下与没有应用本申请的自适应阈值空闲时长调整的vanilla系统相比,可以明显地实现功率节省的效果
根据本公开的实施例所涉及的控制硬盘的方法和电子设备,可以提供明显优于现有技术的优点。具体而言,首先,该方法和电子设备与现有的功率节省方式相比,可以节省更多的功率。同时,由于该方法和电子设备确保用于硬盘的功率周期的数目在硬盘的容忍限度以下,因此并不会增加硬盘的故障率。再次,根据该方法和电子设备为硬盘设置的阈值空闲时长的初始值基于对功率周期时长的期望值与阈值空闲时长的期望值的比率的下界,因此可以避免在硬盘开始工作时设置过于保守的阈值空闲时长从而导致错过在硬盘开始工作时节省更多功率的机会。最后,该方法和电子设备能够在极端低或者高负载时段期间使用更少的功率周期,从而可以随后使用节省的功率周期以实现更长的硬盘旋转停止时间以节省更多的功率。
可行的实现方式
一般而言,本公开的各种示例实施例可以在硬件或专用电路、软件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
作为示例,本公开的实施林可以在机器可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。
用于实现本公开的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
在本公开的上下文中,机器可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。机器可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光存储设备、磁存储设备,或其任意合适的组合。
另外,尽管操作以特定顺序被描绘,但这并不应该理解为要求此类操作以示出的特定顺序或以相继顺序完成,或者执行所有图示的操作以获取期望结果。在某些情况下,多任务或并行处理会是有益的。同样地,尽管上述讨论包含了某些特定的实施细节,但这并不应解释为限制任何发明或权利要求的范围,而应解释为对可以针对特定发明的特定实施例的描述。本说明书中在分开的实施例的上下文中描述的某些特征也可以整合实施在单个实施例中。反之,在单个实施例的上下文中描述的各种特征也可以分离地在多个实施例或在任意合适的子组合中实施。
尽管已经以特定于结构特征和/或方法动作的语言描述了主题,但是应当理解,所附权利要求中限定的主题并不限于上文描述的特定特征或动作。相反,上文描述的特定特征和动作是作为实现权利要求的示例形式而被公开的。
Claims (13)
1.一种用于控制硬盘的方法,包括:
确定所述硬盘在预定时间段内的时间点已完成的功率周期的数目,所述功率周期包括所述硬盘在旋转运行模式和紧邻的旋转停止模式中的总时长;
响应于所述已完成的功率周期的数目小于所述预定时间段中的用于所述硬盘的所述功率周期的上限数目,
确定从所述时间点起算的所述预定时间段的剩余时间,以及
基于所述剩余时间、所述已完成的功率周期的数目和所述上限数目,来确定用于控制所述硬盘进入所述旋转停止模式的阈值空闲时长;以及
响应于确定的所述阈值空闲时长小于预设阈值空闲时长,使用所述预设阈值空闲时长以用于控制所述硬盘进入所述旋转停止模式;
其中所述阈值空闲时长基于以下而被确定:
其中I(t)表示在所述时间点的所述阈值空闲时长,D表示所述预定时间段的总时长,t表示所述时间点从所述预定时间段的开始处起算的时长,λ表示系数,P表示所述上限数目,并且c(t)表示在所述时间点的所述已完成的功率周期的数目。
2.根据权利要求1所述的方法,还包括:
在所述预设阈值空闲时长已经被设置后,并且响应于已完成的功率周期的更新的数目等于所述上限数目,在所述剩余时间中禁止所述硬盘进入所述旋转停止模式。
3.根据权利要求2所述的方法,其中在所述剩余时间中禁止所述硬盘进入所述旋转停止模式包括将所述阈值空闲时长设置为大于所述剩余时间的长度。
5.根据权利要求1或者4所述的方法,其中所述系数λ的值可配置。
6.根据权利要求1或者4所述的方法,其中所述系数的值大于等于自然常数e。
7.一种电子设备,包括:
处理器;以及
存储器,所述存储器被耦合到所述处理器并且存储有供所述处理器执行的指令,所述指令当由所述处理器执行时,使得所述设备执行动作,所述动作包括:
确定硬盘在预定时间段内的时间点已完成的功率周期的数目,所述功率周期包括所述硬盘在旋转运行模式和紧邻的旋转停止模式中的总时长;
响应于所述已完成的功率周期的数目小于所述预定时间段中的用于所述硬盘的所述功率周期的上限数目,
确定从所述时间点起算的所述预定时间段的剩余时间,以及
基于所述剩余时间、所述已完成的功率周期的数目和所述上限数目,来确定用于控制所述硬盘进入所述旋转停止模式的阈值空闲时长;以及
响应于确定的所述阈值空闲时长小于预设阈值空闲时长,使用所述预设阈值空闲时长以用于控制所述硬盘进入所述旋转停止模式;
其中所述阈值空闲时长基于以下而被确定:
其中I(t)表示在所述时间点的所述阈值空闲时长,D表示所述预定时间段的总时长,t表示所述时间点从所述预定时间段的开始处起算的时长,λ表示系数,P表示所述上限数目,并且c(t)表示在所述时间点的所述已完成的功率周期的数目。
8.根据权利要求7所述的电子设备,其中所述动作还包括:
在所述预设阈值空闲时长已经被设置后,并且响应于已完成的功率周期的更新的数目等于所述上限数目,在所述剩余时间中禁止所述硬盘进入所述旋转停止模式。
9.根据权利要求8所述的电子设备,其中在所述剩余时间中禁止所述硬盘进入所述旋转停止模式包括将所述阈值空闲时长设置为大于所述剩余时间的长度。
11.根据权利要求7或者10所述的电子设备,其中所述系数λ的值可配置。
12.根据权利要求7或者10所述的电子设备,其中所述系数的值大于等于自然常数e。
13.一种非瞬态计算机可读介质,包括机器可执行指令,所述机器可执行指令在被执行使得机器执行根据权利要求1至6中的任一权利要求所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611192952.3A CN108228080B (zh) | 2016-12-21 | 2016-12-21 | 用于控制硬盘的方法和电子设备 |
US15/846,389 US10942560B2 (en) | 2016-12-21 | 2017-12-19 | Method of controlling hard disk and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611192952.3A CN108228080B (zh) | 2016-12-21 | 2016-12-21 | 用于控制硬盘的方法和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108228080A CN108228080A (zh) | 2018-06-29 |
CN108228080B true CN108228080B (zh) | 2021-07-09 |
Family
ID=62655803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611192952.3A Active CN108228080B (zh) | 2016-12-21 | 2016-12-21 | 用于控制硬盘的方法和电子设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10942560B2 (zh) |
CN (1) | CN108228080B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109799957B (zh) * | 2019-01-08 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种基于云计算平台的机械硬盘寿命预警方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101040252A (zh) * | 2004-10-12 | 2007-09-19 | 皇家飞利浦电子股份有限公司 | 具有存储介质的设备和操作该设备的方法 |
CN101446857A (zh) * | 2008-12-25 | 2009-06-03 | 成都市华为赛门铁克科技有限公司 | 一种硬盘节能的方法及装置 |
CN101504568A (zh) * | 2009-03-25 | 2009-08-12 | 成都市华为赛门铁克科技有限公司 | 一种运行硬盘的方法、装置及电子设备 |
CN104750434A (zh) * | 2009-07-20 | 2015-07-01 | 卡林戈公司 | 存储集群中的自适应功率保存 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8706914B2 (en) | 2007-04-23 | 2014-04-22 | David D. Duchesneau | Computing infrastructure |
US8201000B2 (en) | 2009-02-24 | 2012-06-12 | International Business Machines Corporation | Computing load management method and system |
US8296513B1 (en) | 2009-08-21 | 2012-10-23 | Pmc-Sierra, Inc. | Standby disk spin up control in disk array system using expander device |
US9317212B2 (en) | 2012-12-18 | 2016-04-19 | Intel Corporation | Method and apparatus for controlling a storage device |
US9483107B2 (en) * | 2014-10-13 | 2016-11-01 | Microsoft Technology Licensing, Llc | Adaptive idle timeout for storage devices |
-
2016
- 2016-12-21 CN CN201611192952.3A patent/CN108228080B/zh active Active
-
2017
- 2017-12-19 US US15/846,389 patent/US10942560B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101040252A (zh) * | 2004-10-12 | 2007-09-19 | 皇家飞利浦电子股份有限公司 | 具有存储介质的设备和操作该设备的方法 |
CN101446857A (zh) * | 2008-12-25 | 2009-06-03 | 成都市华为赛门铁克科技有限公司 | 一种硬盘节能的方法及装置 |
CN101504568A (zh) * | 2009-03-25 | 2009-08-12 | 成都市华为赛门铁克科技有限公司 | 一种运行硬盘的方法、装置及电子设备 |
CN104750434A (zh) * | 2009-07-20 | 2015-07-01 | 卡林戈公司 | 存储集群中的自适应功率保存 |
Also Published As
Publication number | Publication date |
---|---|
CN108228080A (zh) | 2018-06-29 |
US10942560B2 (en) | 2021-03-09 |
US20180210537A1 (en) | 2018-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140344597A1 (en) | Dynamic load and priority based clock scaling for non-volatile storage devices | |
US11468359B2 (en) | Storage device failure policies | |
KR101363844B1 (ko) | 전력 소모를 제한하기 위해 비휘발성 메모리에서의 동작들을 동적으로 제어하는 방법들 및 시스템들 | |
US9141421B2 (en) | Reducing power grid noise in a processor while minimizing performance loss | |
CN114095287A (zh) | 网络交换机的电力节流 | |
US20130007488A1 (en) | Power management of a storage device including multiple processing cores | |
US10133336B2 (en) | Dynamically entering low power states during active workloads | |
US20140149769A1 (en) | Computing system frequency target monitor | |
US8606992B2 (en) | Dynamically switching command types to a mass storage drive | |
US9235665B2 (en) | System, method and apparatus for handling power limit restrictions in flash memory devices | |
CN111427510B (zh) | 用于后台管理操作的优化调度的数据存储系统和方法 | |
US20140006824A1 (en) | Using device idle duration information to optimize energy efficiency | |
EP2798436B1 (en) | Power management using reward-based sleep state selection | |
CN110830560A (zh) | 一种基于强化学习的多用户移动边缘计算迁移方法 | |
US20140149763A1 (en) | Computing system voltage control | |
CN108228080B (zh) | 用于控制硬盘的方法和电子设备 | |
CN107919143B (zh) | 固态存储设备及其温度控制方法 | |
US10025641B2 (en) | Workload differentiation for processor frequency scaling | |
US20160034012A1 (en) | Dynamic Power Budgeting in a Chassis | |
US11372464B2 (en) | Adaptive parameterization for maximum current protection | |
WO2016087002A1 (en) | Voltage regulator mechanism, electronic device, method and computer program | |
CN117097646A (zh) | 尾延迟调整方法及装置 | |
CN112204514A (zh) | 用于保留非易失性存储器的预期寿命的技术 | |
US10102173B2 (en) | Pending load based frequency scaling | |
CN111309134B (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 |