CN102763075B - 存储驱动器管理 - Google Patents

存储驱动器管理 Download PDF

Info

Publication number
CN102763075B
CN102763075B CN201180002814.3A CN201180002814A CN102763075B CN 102763075 B CN102763075 B CN 102763075B CN 201180002814 A CN201180002814 A CN 201180002814A CN 102763075 B CN102763075 B CN 102763075B
Authority
CN
China
Prior art keywords
memory driver
driver
power
described memory
waiting time
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.)
Expired - Fee Related
Application number
CN201180002814.3A
Other languages
English (en)
Other versions
CN102763075A (zh
Inventor
B·库珀
F·A·西迪奇
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN102763075A publication Critical patent/CN102763075A/zh
Application granted granted Critical
Publication of CN102763075B publication Critical patent/CN102763075B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3221Monitoring of peripheral devices of disk drive devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3268Power saving in hard disk drive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Debugging And Monitoring (AREA)

Abstract

通过本发明的实施例,使用可能已经用于平台操作系统的存储驱动程序来提供更健壮的解决方案。这是有效的,原因在于存储驱动程序通常已经监视存储驱动器访问请求,并且因而知道业务何时是未解决的(性能会是关键)或者何时它不是未解决的(并且功率可节省)。

Description

存储驱动器管理
技术领域
一般说来,本发明涉及计算系统,具体来说,涉及管理计算系统中的存储驱动器功率和/或性能。
附图说明
在附图的图中作为举例而不是限制来说明本发明的实施例,图中相似的参考标号表示相似的单元。
图1是按照一些实施例、具有存储驱动器策略引擎的计算机平台的简图。
图2示出按照一些实施例、用于管理存储驱动器性能和功率的例程。
图3是示出按照一个更具体实施例、具有存储驱动器性能/功率管理的计算机平台的简图。
图4是示出按照一些实施例、用于管理存储驱动器访问请求的例程的流程图。
图5是示出按照一些实施例、用于管理送往存储驱动器的功率降低的例程的流程图。
具体实施方式
对于诸如便携式个人计算机(PC)之类的计算平台,诸如高级配置和电源接口(ACPI)之类的功率管理方案提供不同系统、平台和处理核功率和性能状态,所述不同系统、平台和处理核功率和性能状态允许计算平台的不同部分分别随时间而处于较高或较低功率消耗和性能状态以便进行更有效操作。平台组件的性能/功率状态通常由平台操作系统基于诸如任务需求、可用功率等的各种参数来控制。
不幸的是,当前实现的性能状态管理可能基于没有细粒化到足以考虑到(诸如包括硬盘驱动器(HDD)、固态驱动器(SSD)和光盘驱动器(ODD)的存储驱动器之类的)个别装置的需求活动。例如,可能存在与功率管理状态之间的负面相互作用关联的性能问题,例如在因存储驱动器瓶颈而引起的等待时间显著损害性能的情况下。
例如,低等待时间SSD可能对这个问题极为敏感。当前,为了矫正这类问题,用户可能只是关闭其计算机上的功率管理选项,或者只是容忍性能影响。
存储VR(用于向存储装置供应功率的电压调节器)通常具有平台功率供应上最大损失的一部分。作为响应,公司正生产结合了对驱动器的基于硬件的功率剖析和试探(powerprofilingandheuristics)的产品,以便更好地管理其性能/功率状态。不幸的是,这类方法会要求过多附加开销,并且可能甚至不能在预期水平起作用。
相应地,本公开呈现用于矫正这些问题的新方式。通过本发明的一些实施例,使用可能已经用于平台操作系统的存储驱动程序来提供更健壮的解决方案。这是有效的,原因在于存储驱动程序通常已经监视存储驱动器访问请求,并且因而知道何时业务是未解决的(outstanding)(性能会是关键的)或者它何时不是未解决的(并且可节省功率)。因此,该方式前进到更接近如下存储驱动程序,所述存储驱动程序具有关于关键功率节省或性能时机何时是可用的隐含知识。例如,在对驱动器而言没有未解决的事务时,驱动器可经过功率管理,以便节省功率并且允许系统进入深层低功率状态(假定没有另外某个装置阻止它)。另一方面,在事务对于驱动器而言未解决时,激活电压调节器并且使驱动器准备就绪,然后平台等待时间逐渐减少,使得功率管理不成为障碍并且可按需提供充分性能。
图1是计算平台102的简图,计算平台102具有用于管理存储驱动器性能和功率消耗的存储驱动器策略引擎。所示的是诸如便携式计算机(上网本、笔记本、平板计算机、智能电话等)、台式计算机、服务器计算机或者任何其它适当计算装置之类的计算平台的一般化部分。所示平台包括如图所示耦合的运行操作系统OS软件104、一个或多个存储驱动器108、用于向存储驱动器108提供功率的电压调节器106以及等待时间控制寄存器110。OS空间在一个或多个处理器核(未示出)中运行,并且包括存储驱动器策略引擎(SDPE)103以及一个或多个存储驱动器驱动程序105。(通常,各存储驱动器108将具有关联的存储驱动程序105。同样,可存在多于一个存储驱动器策略引擎103。例如,对于各驱动器可存在一个SDPE实例,或者备选地,可将一个或多个SDPE实例用于管理各个驱动器108的性能。)
存储驱动器108可包括任何适当的驱动器技术,包括但不限于硬盘驱动器、光盘驱动器、固态驱动器以及可能尚未认识到的任何其它未来驱动器技术。
图2示出按照一些实施例、用于实现存储驱动器策略引擎的例程。在204,监视存储驱动器访问需求。这可使用存储驱动程序105来进行,如上所述,存储驱动程序105通常知道任何访问(读数据或写数据)请求。在206,策略引擎表征存储驱动器访问需求。也就是说,它确定它是否足够高以保证将驱动器置于低(或较低)等待时间模式并且经由VR106为驱动器提供适当功率,或者相反,确定它是否足够低以保证增加等待时间设定并且降低VR输出。在208,它基于表征的需求来为驱动器设置适当性能设定和功率状态。
在一些实施例中,等待时间控制寄存器110可用于例如通过等待时间设定来设置性能设定。可包括一个或多个寄存器的寄存器可用于对于当前显露的OS功率状态(诸如使用ACPI的平台中的C1、C2、C3状态)控制平台等待时间。等待时间控制设定可影响对驱动器的事务速度能力做贡献的一个或多个不同分量(component)。例如,它们可影响优先级设定、功率设定、链路定义(linkdefinition)等。通过调整各存储驱动器的等待时间,可在使用中动态地限制平台功率管理的总深度,由此在事务不是未解决(大等待时间值)时优化能量效率,而在事务未解决(短等待时间值)时优化性能。
一般在向特定驱动器发出事务请求(涉及存储驱动器的传输)的任何时间,使用存储驱动程序105。存储驱动程序105还能够将这些请求保持在排队状态,以便拖延事务到达特定硬件。(这可通过软件构造来进行。)策略引擎103可通过软件来设置,使得在较短时间间隔对于特定存储驱动器108没有事务未解决时,能够去除对平台的等待时间限制,由此允许较深层功率管理状态变为动态可用。存储驱动器108还可被迅速地(aggressively)送至睡眠状态或待机状态,并且例如可对为驱动器馈电的VR106断言例如轻负载信令。(对于这种情况,因为没有命令或充分低优先级命令在某个时间段被发出,所以驱动器会静止。)
图3示出在一个更详细示例中具有存储驱动器策略引擎的计算平台。所示平台包括经由直接媒体互连(DMI)接口320/350耦合到平台IO芯片331的CPU芯片311。该平台还包括通过平台耦合到PIO芯片350以便向其提供非易失性存储器的硬盘驱动器352、固态驱动器354和光盘驱动器356。经由一个或多个存储VR333来为驱动器供电,存储VR333是通过通用输入/输出(GPIO)接口332来控制的。(为了方便起见,未示出连接到PIO芯片或CPU芯片的其它平台组件、例如显示器、外围装置等。)
PIO芯片331包括用于控制驱动器与平台的其它部分之间的数据传输的驱动器接口控制器(336、338、340)。例如,这些主控制器中的一个或多个主控制器可包括符合AHCI和/或SATA的控制器。(高级主控制器接口(AHCI)是一种编程规范,它按照非实现特定方式来定义串行ATA主控制器(又称作主机总线适配器)的操作。该规范描述计算机硬件厂商的系统存储器结构,以便在主系统存储器与附连存储装置之间交换数据。AHCI为软件开发人员和硬件设计人员提供用于对SATA/AHCI适配器进行检测、配置和编程的标准方法。AHCI与串行ATA-II标准分开,但是它显露SATA的高级能力(例如热插拔和原生命令队列),使得主系统能够利用它们。许多SATA控制器提供可选择的操作模式:遗留并行ATA、标准AHCI模式或厂商特定RAID。
CPU芯片311包括一个或多个处理器核312、图形处理器313、低级高速缓存(LLC)314、存储控制器315、显示接口控制器318和PCIExpress接口控制器324。一个或多个核312运行操作系统软件(OS空间)304,操作系统软件304包括BIOS功率状态管理代码306、一个或多个存储驱动程序310以及OS存储栈308,OS存储栈308包括用于控制存储驱动器352、354和/或356中的一个或多个存储驱动器的功率/性能状态的存储驱动器策略引擎309。(注意,策略引擎被示为OS存储栈308的一部分,但并不局限于此。例如,它可能是驱动程序本身的一部分,或者它可在平台的单独部分中运行。它可由OS厂商、存储驱动器厂商或者由另外某个实体来提供。)在这里还包括的是等待时间寄存器307,可使用软件来实现等待时间寄存器307,或者等待时间寄存器307可对应于OS空间可访问的硬件。
SDPE309可产生于对OS存储驱动程序的修改,或者可选地,可根据驻留在存储驱动程序之上(如图所示)的过滤驱动程序(filterdriver)来设计它。在所示实施例中,它使用PIO芯片上的GPIO来控制存储VR333发信号通知轻负载条件和无负载条件,并且与存储VR子系统进行通信。它还使用系统BIOSACPI方法来控制VR。(在所示实施例中,BIOS用于控制存储驱动器,原因在于它通常包括进行这种操作的平台特定信息,由此允许基于OS(例如存储驱动程序)的方法与平台无关。但是,备选地可使用任何适当备选方案、例如EFI(可扩展固件接口)。
图4示出用于离开降低的存储驱动器功率状态的例程。(注意,下面进行论述,图4和图5的例程可协作用于管理给定存储驱动器的功率/性能。)在402,检测存储驱动器IO事务请求。在404,它确定驱动器是否断电。如果驱动器断电,则在406,它使驱动器VR通电。在408,它设置和/或恢复存储驱动器上下文,例如活动模式的缺省设定或预设设定。在414,它检查以了解该访问是否为媒体访问请求,例如驱动器上存储的以便向用户播放的电影的请求,意味着需要低等待时间设定和较高功率能力。如果访问请求是用于媒体访问,则在422,在活动模式对驱动器加电(powerup),以及在420,驱动器等待时间设定被设置用于充分低的等待时间。在424,将任务请求排队以便提供服务,以及然后在426,设置短定时器。
返回到414,如果访问请求不是用于媒体访问,则在416,在待机模式对驱动器加电,以及在418,向非媒体请求通过服务。最后,在426,设置短定时器。
因此,通过这个例程,在将事务请求提交给驱动器时,策略引擎能够使命令在软件队列中“保持”未决(例如使用存储驱动程序),分析未决命令并且确定是否应当为它们提供服务。也就是说,确定任何特定功率下降(powerdown)动作是否应当完全撤消还是部分地撤消,或者它们是否应当保持原样。不要求对驱动器的存储空间或物理媒体的访问的未决命令能够通过将驱动器部分地加电到“通电待机”状态而不是完全加电(例如活动)状态来完成。这由于可能周期地对驱动器的存在进行ping的软件而有助于使对功率节省特征的破坏为最小。
同时,如果输入的事务目标是驱动器上的媒体数据并且因此要求完全(例如活动模式)加电,则可能已经进行的功率下降动作能够被撤消,以便完成输入的请求。一旦驱动器完全加电,则它能够基于在软件队列中未决的I/O请求的类型来确定是否应当对于平台调整等待时间容限,即使它可能仍然处于平台功率管理状态(例如,甚至是深层睡眠、待机等状态)也是如此。例如,未决的大量传输请求流可指示,在驱动器加电时,可能希望有更严格的等待时间容限以便允许来自驱动器的最大吞吐量。因此,在高I/O(即,I/O驱动器访问事务)需求情况下,策略引擎能够写到等待时间控制寄存器(它控制驱动器的等待时间容限)或者通过使用平台中的ACPI通知与OSPMC状态算法进行通信,设置更严格等待时间容限,来使C状态逻辑动态降级(demote),因而避免深层功率管理状态等待时间。因此,通过本文所公开的一些实施例,至少在适当水平可得到两个环境(功率节省和增加的性能)中的最佳结果。
图5示出在一些实施例中用于进入降低的存储驱动器功率模式的例程。可至少最初(例如加电)在501进入降低的存储驱动器功率模式,或者可在502从短定时器或长定时器(与图4的例程相同的短定时器)的到期起进入降低的存储驱动器功率模式。当对存储驱动程序的事务访问请求不是未决时,定时器被用于识别时间间隙(短间隙和较长间隙)。应当理解,术语“短”和“长”是彼此相对的术语,便捷地便于第一定时器和第二定时器。在那里实际持续时间将取决于平台参数和预期性能。也可根据预期粒度来使用更多或更少定时器。
假定从定时器到期进入该例程,则在504,策略引擎确定是否有任何命令是未决的。例如,来自先前未决的访问请求的命令可能仍然需要被服务。如果存在待执行的其余命令,则在506,它重置和启动定时器并且使驱动器通电。由此,转到524,设置正常(缺省)驱动器等待时间并且结束。
另一方面,如果在504没有命令未决,则如果到期定时器是短定时器,则转到514,并且降低送往存储驱动器的功率。在512,对存储驱动器VR断言轻负载信令。在510,它设置(增加)等待时间容限,以及在508,它设置长定时器并且退出例程。
返回到522,如果长定时器到期,则在520它使存储驱动器断电,在518使存储驱动器VR断电,在516设置低等待时间要求(甚至更长等待时间容限),并且退出例程。
因此,通过图5的例程,在较长时段没有提交给存储驱动程序的事务(长定时器)之后,驱动器甚至可进一步断电(但是同时,提前保存所有必要上下文)。GPIO(例如通过ACPIBIOS方法)可被用于使驱动器完全断电。一旦驱动器已经完全功率下降,则附加的功率节省也能够通过将存储控制器置于较低功率状态来实现,(例如在ACPI上下文中,它可被置于D3或更深层,例如SOix状态)。
在前面的描述以及下面的权利要求书中,下列术语应当作如下解释:可使用术语“耦合”和“连接”及其派生。应当理解,这些术语不是要作为彼此的同义词。在具体实施例中,“连接”而是用于指明两个或更多单元处于相互直接物理接触或电接触。“耦合”用于指明两个或更多单元相互协作或交互,但它们可以处于直接物理接触或电接触或者可以不处于直接物理接触或电接触。
还应当理解,在一些附图中,信号导体线采用线条来表示。一些线条可能更粗以指示更多组成信号通路,具有数量标签以指示组成信号通路的数量,和/或在一端或多端具有箭头以指示主要信息流动方向。但是,这不应当被解释为限制的方式。这种增加的细节而是可与一个或多个示范实施例结合用于促进更容易地理解简图。无论是否具有附加信息,任何所表示的信号线均可实际上包括可在多个方向上传播的一个或多个信号,并且可采用任何适当类型的信号方案来实现,例如采用差分对所实现的数字线或模拟线、光纤线和/或单端线。
应当理解,可能给出了示例尺寸/模型/值/范围,但是本发明并不局限于此。随着制造技术(例如光刻)随时间而成熟,预计可制造更小尺寸的装置。另外,为了说明和论述的简洁性并且为了不影响对本发明的理解,在附图中可能示出或者可能没有示出到IC芯片和其它组件的众所周知的电源/接地连接。此外,为了避免影响对本发明的理解,并且也鉴于以下事实:相关于框图布置的实现的细节在很大程度上取决于要在其中实现本发明的平台,也就是说,这类细节应当完全处于本领域的技术人员的理解范围之内,可采取这类框图形式示出布置。虽然提出特定详情(例如电路)以便描述本发明的示例实施例,但本领域的技术人员应当非常清楚,没有这些特定详情或者采用这些特定详情的变更形式的情况下也可实施本发明。因此,本描述要被看作是说明性而不是限制性的。

Claims (24)

1.一种计算平台中用于管理存储驱动器的方法,包括:
由存储驱动器驱动程序内的策略引擎监视存储驱动器访问需求以便确定是否在充分时间量没有对所述存储驱动器驱动程序提交事务访问请求;
如果在所述充分时间量没有提交事务访问请求,则使用用于对于显露的操作系统功率状态增加平台等待时间的至少一个寄存器来改变存储驱动器的优先级设定以及降低供应给所述存储驱动器的功率;
检测到存储驱动器IO事务请求;
确定所述存储驱动器IO事务请求是对所述存储驱动器上存储的媒体的媒体访问请求;
增加所述存储驱动器的功率能力;以及
减少所述存储驱动器的等待时间设定。
2.如权利要求1所述的方法,还包括如果在所述充分时间量没有提交事务访问请求,则增加所述存储驱动器的等待时间容限。
3.如权利要求2所述的方法,其中,所述降低功率和增加等待时间容限由运行于所述计算平台的操作系统空间中的策略引擎来发起。
4.如权利要求2所述的方法,其中,增加所述存储驱动器的等待时间容限包括设置等待时间控制寄存器状态。
5.如权利要求1所述的方法,其中,通过平台BIOS实用程序来控制所述存储驱动器。
6.如权利要求1所述的方法,其中,监视包括监视第一时间量,以及如果在所述第一时间量没有提交事务访问请求,则将供应给所述存储驱动器的功率降低到第一功率状态。
7.如权利要求6所述的方法,其中,监视包括如果在所述第一时间量没有提交事务访问请求,则监视附加时间,以及如果在所述附加时间没有提交事务访问请求,则将供应给所述存储驱动器的功率降低到第二功率状态,所述第二功率状态引起比所述第一功率状态更少的功率消耗。
8.如权利要求7所述的方法,其中,所述第二功率状态包含降低送往所述存储驱动器的控制器的功率。
9.如权利要求6所述的方法,包括如果在所述第一时间量没有提交事务访问请求,则将驱动器等待时间增加到第一等级。
10.如权利要求9所述的方法,包括如果在附加时间没有提交访问请求,则将驱动器等待时间增加到第二等级,所述第二等级比所述第一等级要长。
11.一种计算设备,包括:
存储驱动器以及便于访问所述存储驱动器的存储驱动器驱动程序;
电压调节器,用于将功率供应给所述存储驱动器;
策略引擎,在所述存储驱动器驱动程序内,用于监视所述存储驱动器驱动程序,以便确定是否在充分时间量没有对所述存储驱动器驱动程序提交事务访问请求,其中如果在所述充分时间量没有提交事务访问请求,则所述设备配置成:
改变所述存储驱动器的优先级设定;
降低供应给所述存储驱动器的功率,其中至少一个寄存器用于对于显露的操作系统功率状态增加平台等待时间;
检测到存储驱动器IO事务请求;
确定所述存储驱动器IO事务请求是对所述存储驱动器上存储的媒体的媒体访问请求;
增加所述存储驱动器的功率能力;以及
减少所述存储驱动器的等待时间设定。
12.如权利要求11所述的计算设备,其中,如果在所述充分时间量没有提交事务访问请求,则所述策略引擎增加所述存储驱动器的等待时间容限。
13.如权利要求12所述的计算设备,其中,所述策略引擎通过设置等待时间控制寄存器状态来增加所述存储驱动器的等待时间容限。
14.如权利要求12所述的计算设备,其中,所述策略引擎通过改变基于操作系统的功率管理状态来增加所述存储驱动器的等待时间容限。
15.如权利要求14所述的计算设备,其中,所述策略引擎通过经由BIOSACPI特征改变高级配置电源接口(ACPI)状态来增加所述存储驱动器的等待时间容限。
16.如权利要求11所述的计算设备,包括用于控制所述存储驱动器的平台BIOS实用程序。
17.如权利要求11所述的计算设备,其中,如果在第一时间量没有提交事务访问请求,则所述策略引擎将供应给所述存储驱动器的功率降低到第一功率状态。
18.如权利要求17所述的计算设备,其中,如果在所述第一时间量没有提交事务访问请求,则当在超过所述第一时间量的附加时间没有提交事务访问请求的情况下,所述策略引擎将供应给所述存储驱动器的功率降低到第二功率状态,所述第二功率状态引起比所述第一功率状态更少的功率消耗。
19.如权利要求18所述的计算设备,其中,所述第二功率状态包含降低送往所述存储驱动器的控制器的功率。
20.如权利要求17所述的计算设备,其中,如果在所述第一时间量没有提交事务访问请求,则所述策略引擎将驱动器等待时间增加到第一等级。
21.如权利要求20所述的计算设备,其中,如果在附加时间没有提交访问请求,则所述策略引擎将驱动器等待时间增加到第二等级,所述第二等级比所述第一等级要长。
22.一种用于管理存储驱动器功率的设备,包括:
存储驱动器;
电压调节器,用于将功率供应给所述存储驱动器;
耦合到所述存储驱动器的处理器,所述处理器用于运行所述存储驱动器的存储驱动程序;以及
策略引擎,在所述存储驱动程序内,用于与对于所述处理器所实现的单独功率管理系统无关地控制所述存储驱动器的功率和等待时间状态;其中所述策略引擎配置成监视所述存储驱动程序以便确定是否在充分时间量没有对所述存储驱动程序提交事务访问请求,其中如果在所述充分时间量没有提交事务访问请求,则所述设备配置成:
改变所述存储驱动器的优先级设定;
降低供应给所述存储驱动器的功率,其中至少一个寄存器用于对于显露的操作系统功率状态增加平台等待时间;
检测到存储驱动器IO事务请求;
确定所述存储驱动器IO事务请求是对所述存储驱动器上存储的媒体的媒体访问请求;
增加所述存储驱动器的功率能力;以及
减少所述存储驱动器的等待时间设定。
23.如权利要求22所述的设备,其中,所述处理器运行实现所述单独功率管理系统的操作系统。
24.如权利要求23所述的设备,其中,所述单独功率管理系统是高级配置和电源接口系统。
CN201180002814.3A 2010-09-30 2011-09-27 存储驱动器管理 Expired - Fee Related CN102763075B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US12/894,670 2010-09-30
US12/894670 2010-09-30
US12/894,670 US8595522B2 (en) 2010-09-30 2010-09-30 Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
PCT/US2011/053419 WO2012044609A2 (en) 2010-09-30 2011-09-27 Storage drive management

Publications (2)

Publication Number Publication Date
CN102763075A CN102763075A (zh) 2012-10-31
CN102763075B true CN102763075B (zh) 2016-07-06

Family

ID=45890854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180002814.3A Expired - Fee Related CN102763075B (zh) 2010-09-30 2011-09-27 存储驱动器管理

Country Status (7)

Country Link
US (2) US8595522B2 (zh)
EP (1) EP2622468A4 (zh)
JP (1) JP5730999B2 (zh)
KR (1) KR101485274B1 (zh)
CN (1) CN102763075B (zh)
TW (1) TWI539272B (zh)
WO (1) WO2012044609A2 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595522B2 (en) 2010-09-30 2013-11-26 Intel Corporation Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US9201677B2 (en) * 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US8996807B2 (en) 2011-02-15 2015-03-31 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a multi-level cache
US8713204B2 (en) * 2011-12-27 2014-04-29 Apple Inc. High-performance AHCI interface
US10073656B2 (en) 2012-01-27 2018-09-11 Sandisk Technologies Llc Systems and methods for storage virtualization
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
JP5885881B2 (ja) * 2012-07-27 2016-03-16 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. コンピューティングデバイスにおける電源オフ状態の実施
US10346095B2 (en) 2012-08-31 2019-07-09 Sandisk Technologies, Llc Systems, methods, and interfaces for adaptive cache persistence
US9158357B2 (en) * 2012-12-28 2015-10-13 Intel Corporation System and method for conveying service latency requirements for devices connected to low power input/output sub-systems
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
US9697130B2 (en) 2014-06-25 2017-07-04 Sandisk Technologies Llc Systems and methods for storage service automation
TWI612475B (zh) * 2015-09-09 2018-01-21 緯創資通股份有限公司 伺服器及其控制方法
CN108292278B (zh) * 2016-01-22 2021-02-26 株式会社日立制作所 计算机系统和计算机
US9740267B1 (en) 2016-10-31 2017-08-22 International Business Machines Corporation Adjusting power management controls of a memory based on traffic
JP6249121B1 (ja) * 2017-03-30 2017-12-20 日本電気株式会社 消費電力削減装置、消費電力削減方法および消費電力削減プログラム
US10445257B2 (en) * 2017-04-30 2019-10-15 Microsoft Technology Licensing, Llc Execution of subset of driver code in separate protection domain
US10739840B2 (en) * 2017-07-31 2020-08-11 Dell Products L.P. System and method of utilizing operating context information
TWI639921B (zh) 2017-11-22 2018-11-01 大陸商深圳大心電子科技有限公司 指令處理方法及使用所述方法的儲存控制器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1416358A2 (en) * 2002-10-31 2004-05-06 Lg Electronics Inc. Apparatus and method for managing power in computer system
CN2901666Y (zh) * 2006-03-28 2007-05-16 蓝天电脑股份有限公司 电源管理装置

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471625A (en) 1993-09-27 1995-11-28 Motorola, Inc. Method and apparatus for entering a low-power mode and controlling an external bus of a data processing system during low-power mode
US5452277A (en) * 1993-12-30 1995-09-19 International Business Machines Corporation Adaptive system for optimizing disk drive power consumption
US5481733A (en) * 1994-06-15 1996-01-02 Panasonic Technologies, Inc. Method for managing the power distributed to a disk drive in a laptop computer
US7188261B1 (en) 2001-05-01 2007-03-06 Advanced Micro Devices, Inc. Processor operational range indicator
US20020199129A1 (en) * 2001-06-21 2002-12-26 International Business Machines Corp. Data storage on a computer disk array
US20040068672A1 (en) * 2002-03-21 2004-04-08 Tempest Microsystems Lower power disk array as a replacement for robotic tape storage
US7573715B2 (en) * 2002-03-21 2009-08-11 Tempest Microsystems High density storage system
US7143203B1 (en) 2002-04-26 2006-11-28 Advanced Micro Devices, Inc. Storage device control responsive to operational characteristics of a system
US7028200B2 (en) 2002-05-15 2006-04-11 Broadcom Corporation Method and apparatus for adaptive power management of memory subsystem
KR100499611B1 (ko) * 2002-08-22 2005-07-05 엘지전자 주식회사 컴퓨터 시스템의 전원 관리방법 및 장치
AU2003259399A1 (en) * 2002-09-09 2004-03-29 Koninklijke Philips Electronics N.V. Method and apparatus for managing power consumption of a disk drive
US7089459B2 (en) 2002-09-30 2006-08-08 Intel Corporation Limit interface for performance management
US7114064B2 (en) * 2002-11-14 2006-09-26 Hewlett-Packard Development Company, L.P. System and method for accessing an advanced configuration and power interface (ACPI) namespace nodal tree
US7142995B2 (en) * 2003-03-18 2006-11-28 Mitac Technology Corp. Method for reading battery status by operation system of portable computer
JP2007503042A (ja) * 2003-08-20 2007-02-15 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 動的メモリバッファ
US7266711B2 (en) 2003-11-17 2007-09-04 Intel Corporation System for storing data within a raid system indicating a change in configuration during a suspend mode of a device connected to the raid system
JP4518541B2 (ja) * 2004-01-16 2010-08-04 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
JP2005316593A (ja) * 2004-04-27 2005-11-10 Sony Corp 電力制御装置及び電力制御方法
JP4293948B2 (ja) * 2004-07-09 2009-07-08 富士通株式会社 ディスク装置およびディスク装置の制御方法
JP4404751B2 (ja) * 2004-11-16 2010-01-27 富士通株式会社 情報処理システム,ストレージ装置,ストレージ制御プログラム,及びストレージ制御プログラムを記録したコンピュータ読取可能な記録媒体
US7814485B2 (en) 2004-12-07 2010-10-12 Intel Corporation System and method for adaptive power management based on processor utilization and cache misses
JP2006251982A (ja) 2005-03-09 2006-09-21 Matsushita Electric Ind Co Ltd 省電力システム、記録媒体、ドライバ及びプログラム
US7383457B1 (en) 2005-03-23 2008-06-03 Apple Inc. Adaptive power-reduction mode
JP2008542932A (ja) * 2005-06-10 2008-11-27 フリースケール セミコンダクター インコーポレイテッド 媒体アクセス制御装置及び方法
KR20070013404A (ko) * 2005-07-26 2007-01-31 엘지전자 주식회사 저장 장치 전원 제어 장치 및 방법
JP4897387B2 (ja) 2006-08-10 2012-03-14 株式会社日立製作所 ストレージ装置およびこれを用いたデータの管理方法
CN103123702B (zh) 2007-08-28 2017-11-28 Commvault系统公司 如数据存储操作的自适应能耗管理的数据处理资源的能耗管理
US8156353B2 (en) 2007-09-17 2012-04-10 Intel Corporation Techniques for communications power management based on system states
US8176341B2 (en) * 2008-03-31 2012-05-08 Intel Corporation Platform power management based on latency guidance
JP2010015446A (ja) 2008-07-04 2010-01-21 Hitachi Ltd ストレージ装置及び電源の制御方法
WO2010092699A1 (en) 2009-02-16 2010-08-19 Hitachi, Ltd. Storage apparatus and its power saving control method
US8005998B2 (en) * 2009-03-22 2011-08-23 Silicon Motion Inc. Method for controlling power consumption of a USB mass storage, associated personal computer, and storage medium storing an associated USB mass storage driver
US8566628B2 (en) 2009-05-06 2013-10-22 Advanced Micro Devices, Inc. North-bridge to south-bridge protocol for placing processor in low power state
US8108650B2 (en) * 2009-05-29 2012-01-31 Apple Inc. Translation lookaside buffer (TLB) with reserved areas for specific sources
US8595522B2 (en) 2010-09-30 2013-11-26 Intel Corporation Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
US8700936B2 (en) 2010-12-03 2014-04-15 Schneider Electric It Corporation Modular gating of microprocessor low-power mode
US9015396B2 (en) 2012-09-18 2015-04-21 Apple Inc. Reducing latency in a peripheral component interconnect express link
US20140173306A1 (en) 2012-12-19 2014-06-19 Barnes Cooper System and method for providing for power savings in a processor environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1416358A2 (en) * 2002-10-31 2004-05-06 Lg Electronics Inc. Apparatus and method for managing power in computer system
CN2901666Y (zh) * 2006-03-28 2007-05-16 蓝天电脑股份有限公司 电源管理装置

Also Published As

Publication number Publication date
US8595522B2 (en) 2013-11-26
US9507402B2 (en) 2016-11-29
US20120084582A1 (en) 2012-04-05
CN102763075A (zh) 2012-10-31
WO2012044609A2 (en) 2012-04-05
EP2622468A2 (en) 2013-08-07
JP2013538411A (ja) 2013-10-10
TWI539272B (zh) 2016-06-21
WO2012044609A3 (en) 2012-06-07
EP2622468A4 (en) 2014-04-02
JP5730999B2 (ja) 2015-06-10
TW201224737A (en) 2012-06-16
US20140136872A1 (en) 2014-05-15
KR20130049201A (ko) 2013-05-13
KR101485274B1 (ko) 2015-01-21

Similar Documents

Publication Publication Date Title
CN102763075B (zh) 存储驱动器管理
EP1780624B1 (en) Dynamic lane management system and method
EP3242185B1 (en) Server rack power management
US9740645B2 (en) Reducing latency in a peripheral component interconnect express link
US8751836B1 (en) Data storage system and method for monitoring and controlling the power budget in a drive enclosure housing data storage devices
US7472298B1 (en) Storage system and method for saving energy based on storage classes with corresponding power saving policies
US9600059B2 (en) Facilitating power management in a multi-core processor
JP5707321B2 (ja) スリーププロセッサ
US10509455B2 (en) Method and apparatus to control a link power state
US10429912B2 (en) Computing system and processor with fast power surge detection and instruction throttle down to provide for low cost power supply unit
US11720157B2 (en) USB hub with integrated power and thermal management
US11086390B2 (en) Method and apparatus for improving power management by controlling a system input current in a power supply unit
WO2020082929A1 (zh) 一种数据处理方法及分布式存储系统
TW202026805A (zh) 提供峰值優化電力供應單元的方法與裝置
KR101209917B1 (ko) 고속 비휘발성 호스트 인터페이스를 가지는 복수 배열 독립 디스크 컨트롤 반도체 저장 장치 기반 시스템
CN112306804B (zh) 一种处理方法及处理装置
TWI805855B (zh) 電力輔助之資訊處理系統、電力輔助單元及用以調節至資訊處理系統之負載的電力之方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160706

Termination date: 20210927

CF01 Termination of patent right due to non-payment of annual fee