CN106527652B - 用于控制功耗的系统和方法 - Google Patents
用于控制功耗的系统和方法 Download PDFInfo
- Publication number
- CN106527652B CN106527652B CN201610739044.5A CN201610739044A CN106527652B CN 106527652 B CN106527652 B CN 106527652B CN 201610739044 A CN201610739044 A CN 201610739044A CN 106527652 B CN106527652 B CN 106527652B
- Authority
- CN
- China
- Prior art keywords
- processor
- memory
- operating
- power consumption
- power
- 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
-
- 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
-
- 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
-
- 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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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/3275—Power saving in memory, e.g. RAM, cache
-
- 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/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/005—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C14/00—Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
- G11C14/0009—Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down in which the volatile element is a DRAM cell
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/143—Detection of memory cassette insertion or removal; Continuity checks of supply or ground lines; Detection of supply variations, interruptions or levels ; Switching between alternative supplies
-
- 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 Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
- Memory System (AREA)
Abstract
本公开提供了用于控制功耗的系统和方法。一种实施例包括系统,该系统包括:处理器;多个存储器;以及控制电路,结合到处理器和存储器并且被配置为:接收功率限制;测量处理器和存储器的功耗;以及迭代地改变处理器和存储器的多个操作参数,以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态。
Description
本申请要求2015年9月14日提交的第62/218,527号美国临时专利申请和2015年12月11日提交的第14/967,266号美国专利申请的权益,上述专利申请的内容通过引用全部包含于此以用于所有目的。
技术领域
本公开涉及控制系统中的功耗,尤其涉及控制存储系统中的功耗。
背景技术
装置的功耗正成为商业和消费者市场的度量标准。例如,在商业数据中心内,冷却成本可以占用总成本的三分之一。此外,现代数据中心服务器已经开始采用高性能的固态驱动器(SSD),诸如,高速NVM(NVMe,NVM Express)装置。相比于其他SSD,NVMe装置通常包括更高性能CPU和大的动态随机存取存储器(DRAM)以提供更高的性能。这种高性能装置会消耗更多的电力,这些电力在数据中心配置中甚至会成为很大量的功耗。类似地,诸如膝上型计算机的消费移动装置已经开始采用更高性能的SSD。功耗类似地成为在移动装置不插电时的因素。
SSD可以包括最大热设计功率(TDP)。然而,TDP是在设计期间设定的针对最大功耗的规格以防止对装置的损害。如果超过TDP,则性能被节流以保持在TDP之下。
发明内容
实施例包括一种系统,该系统包括:处理器;多个存储器;以及控制电路,结合到处理器和存储器并且被配置为:接收功率限制;测量处理器和存储器的功耗;以及迭代地改变处理器和存储器的多个操作参数,以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态。
实施例包括一种方法,该方法包括:接收控制电路中的功率限制;通过控制电路来测量处理器和多个存储器的功耗;以及通过控制电路来迭代地改变处理器和存储器的多个操作参数,以使与处理器和存储器相关联的目标函数最优化至功耗小于或等于功率限制的操作状态。
实施例包括一种系统,该系统包括:多个装置;以及控制电路,结合到所述装置并且被配置为:接收功率限制;测量所述装置的功耗;以及迭代地改变所述装置的多个操作参数,以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态。
附图说明
图1A是根据实施例的系统的示意图。
图1B是根据实施例的控制电路的示意图。
图2A-图2F是根据各种实施例的迭代的示意图。
图3是根据另一个实施例的具有易失性和非易失性存储器的系统的示意图。
图4是根据另一个实施例的具有功率计的系统的示意图。
图5是根据另一个实施例的系统的示意图。
图6是根据另一个实施例的系统的示意图。
图7是根据实施例的迭代的方法的流程图。
图8是根据实施例的迭代的方法的流程图。
图9是根据实施例的服务器的示意图。
图10是根据实施例的服务器系统的示意图。
图11是根据实施例的数据中心的示意图。
具体实施方式
实施例涉及控制系统中的功耗。给出以下描述使得本领域的普通技术人员能够作出并且使用该实施例,并且在专利申请及其需要的语境中提供以下描述。对实施例的各种修改以及这里描述的一般原理和特征将是容易理解的。主要按照特定方法和特定的实施方式中提供的系统来描述实施例。
然而,方法和系统将在其他实施方式中有效地操作。诸如“实施例”、“一个实施例”和“另一个实施例”的术语可以表示相同或不同的实施例以及多个实施例。将相对于具有某些组件的系统和/或装置来描述实施例。然而,系统和/或装置可以包括比示出的组件更多或更少的组件,在不脱离本公开的范围的情况下,可以进行组件的布置和类型的变化。也将在具有某些步骤的特定方法的上下文中描述实施例。然而,方法和系统可以根据具有不同和/或附加步骤以及按照与实施例不一致的不同顺序的步骤的其他方法来操作。因此,实施例并不意图限制示出的特定实施例,而是符合与这里描述的原理和特征一致的最宽范围。
在具有某些组件的特定系统的上下文中描述实施例。本领域普通技术人员将容易地认识到,实施例与具有其他和/或附加组件和/或其他特征的系统的使用一致。然而,本领域普通技术人员将容易地认识到,方法和系统与其他结构一致。也可以在单个组件的上下文中描述方法和系统。然而,本领域普通技术人员将容易地认识到,方法和系统与具有多个组件的存储系统架构的使用一致。
本领域技术人员将理解,通常,这里使用的术语,尤其在所附权利要求中(例如,所附权利要求的主体)的术语一般意为“开放”术语(例如,术语“包含”应当解释为“包含但不限于”,术语“具有”应当解释为“至少具有”,术语“包括”应当解释为“包括但不限于”等)。本领域中的技术人员还将理解,如果意图引用特定数量的介绍的权利要求,这种意图将在权利要求中明确地引用,在缺少这种引用的情况下,不存在这种意图。例如,为了帮助理解,以下所附权利要求可以包括引导术语“至少一个”和“一个或更多个”的使用,以介绍引用的权利要求。然而,这种术语的使用不应当解释为暗示,由不定冠词“a”或“an”引用的权利要求的介绍将包括这种引用介绍的权利要求的任何特定权利要求限制为仅包括一个这种引用的示例,即使在同一个权利要求包括引导术语“一个或更多个”或“至少一个”以及诸如“a”或“an”的不定冠词(例如,“a”和/或“an”应当介绍为意味着“至少一个”或“一个或更多个”)时;对用于介绍权利要求引用的定冠词的使用同样适用。此外,在使用类似于“A、B或C等的至少一个”的惯例的这种情况下,一般这种惯例意在本领域技术人员将理解的惯例的意思(例如,“具有A、B或C的至少一个的系统”将包括但不限于具有单独A、单独B、单独C、A和B一起、A和C一起、B和C一起、和/或A、B和C一起等的系统)。本领域中的技术人员还将理解,事实上表示两个或更多个选择性术语的任何分隔的词和/或术语,不论在说明书、权利要求书或附图中,应当理解为意图包括术语的一个、两个术语中的一个、或两个术语全部的可能性。例如,术语“A或B”将理解为包括“A”或“B”或“A和B”的可能性。
图1A是根据示例实施例的系统的示意图。在该实施例中,系统100结合到主机102。系统100包括处理器104、多个存储器106和控制电路108。
在一些实施例中,系统100可包括存储系统。例如,存储系统可以配置为通过通信接口(诸如串行附设的SCSI(SAS)、串行ATA(SATA)、高速NVM(NVMe)、光纤通道、以太网、远程直接存储器存取(RDMA)等)结合到主机102。然而,在其他实施例中,系统100可以不同于存储系统。如这里将描述的,系统100可以是具有组件的任意系统,所述组件具有多个操作参数,这些操作参数对系统的功耗和至少另一个方面有影响。
处理器104可以是通用处理器、数字信号处理器(DSP)、专用集成电路、微控制器、可编程逻辑装置、分立电路、这些装置的组合等。处理器104可以包括诸如寄存器、高速缓冲存储器、处理核心等的内部部分,也可以包括诸如地址和数据总线接口、中断接口等的外部接口。虽然仅示出一个处理器104,但是可以存在多个处理器。此外,其他接口装置(诸如逻辑芯片组、集线器、存储器控制器、通信接口等)可以是系统100的部件,以将处理器104连接到内部组件和外部组件。
存储器106可以是能够存储数据的任何装置。这里,示出了两个存储器106;然而,系统100中可以包括大于1的任意数量的存储器106。存储器106的示例包括:动态随机存取存储器(DRAM)模块、根据诸如DDR、DDR2、DDR3、DDR4的各种标准的双数据速率同步动态随机存取存储器(DDRSDRAM)、静态随机存取存储器(SRAM)、非易失性存储器(诸如闪存、自旋转移力矩磁阻式随机存取存储器(STT-MRAM)、或相变RAM)等。
控制电路108是结合到处理器104和存储器106的电路。控制电路108可以类似于处理器104而包括通用处理器、数字信号处理器(DSP)、专用集成电路、微控制器、可编程逻辑装置、分立电路等。如下面将进一步详细描述的,控制电路108可以在处理器104中实施;然而,在该实施例中,控制电路108与处理器104分开。
控制电路108可以包括与处理器104和存储器106接口连接的电路。例如,控制电路108可以与处理器104和存储器106结合到公共总线。在其他实施例中,控制电路108可以包括连接到处理器104和存储器106的相应输入和输出、连接到中间装置等的输入和输出。例如,控制电路108可以被配置为控制一个或更多个稳压器(voltage regulator),其中,所述稳压器被配置为将电源电压供应给存储器106和处理器104中的一个或更多个。在另一个示例中,控制电路108可以包括至处理器104和存储器106的相应通信接口的接口,诸如I2C接口。在又一个示例中,控制电路108可以直接连接到处理器104和存储器106的输入和输出。
不管怎样,控制电路108可以被配置为与处理器104和/或存储器106相互作用。具体地,控制电路108可以被配置为从处理器104和存储器106接收功率信息,并且影响处理器104和存储器106的多个操作参数。例如,控制电路108可以被配置为测量处理器104和/或存储器106的功耗。此外,控制电路108可以被配置为迭代地改变处理器104和存储器106的多个操作参数,以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态。
图1B是根据示例实施例的控制电路的示意图。参照图1A和图1B,在该实施例中,控制电路108被配置为接收功率测量110。功率测量110表示处理器104和/或存储器106的功耗的测量。例如,功率测量110可以包括对于处理器104和每个存储器106的功耗的测量。控制电路108可以以各种方式接收功率测量110。例如,控制电路108可以使用通信接口、至处理器104和存储器106的直接连接件等,来读取处理器104和存储器106的功率、温度、电流和/或电压计(meter)。在另一个示例中,控制电路108可以包括算法逻辑单元或其他电路,它们被配置为计算存储器106和处理器104中的一个或更多个的功耗的估计。
控制电路108还被配置为接收功率限制112。例如,如果控制电路108包括单独的微控制器,则该微控制器可以通过通信总线来接收表示特定功率水平(level)的通信。可以从处理器104、系统100外部的装置等接收这样的通信。然而,可以根据控制电路108的特定电路而以其他方式来接收功率限制112。在实施例中,在主机102上运行的软件可以被配置为:发布系统调用(system call),诸如IOTCL调用,或者被与系统100相关联的API暴露的其他调用。通过该调用,主机102可发送包括功率限制的命令。例如,命令可以包括功率限制的值。在另一个示例中,命令可以包括将时间信息或时钟信息与功率预算或功率限制相关联起来的一组规则、时间表等。此外,命令中还可以包括目标函数和/或其他元(meta)。在特定实施例中,命令可以包括多个项(entry),每个项包括时间、功率限制和目标函数。因此,主机102可以控制系统100的功率限制、建立系统100所遵循的规则或时间表、设定目标函数等。
控制电路108被配置为输出操作参数114。该操作参数114表示处理器104和/或存储器106的参数,可以改变这些参数来改变处理器104和存储器106的操作。例如,操作参数114可以包括处理器104和存储器106的可被控制以影响性能和/或功耗的任意参数。在特定示例中,控制电路108可以被配置为向处理器104和/或存储器106的寄存器写入。在另一个示例中,控制电路108可以将控制信号发送给稳压器,以使稳压器向处理器104和存储器106中的一个或更多个输出不同的电压。
如上所述,控制电路108可以被配置为迭代地改变处理器104和存储器106的多个操作参数以使目标函数最优化。具体地,可以执行该最优化使得使用操作参数的最优状态的系统100的操作小于或等于功率限制112。该最优化可以在运行时间(run time)执行。因此,目标函数可以在特定功率预算的约束下最优化。
该目标函数可以表示将要被最优化的各种条件。例如,目标函数可以表示系统100的性能、系统100的耐久力、系统100的可靠性等。在其他示例中,目标函数可以表示系统100的输入和输出的数量、带宽、延迟、容量或其他方面。目标函数可以表示比全部系统100少的方面。例如,目标函数可以仅表示存储器106的性能或其他方面。可以将系统100的任意度量标准用作目标函数或用作目标函数的一部分。
在示例实施例中,操作参数可包括处理器104的至少一个操作参数、存储器106中的第一存储器的至少一个操作参数以及存储器106中的第二存储器的至少一个操作参数。即,操作参数包括来自处理器104和每个存储器106的操作参数。结果,处理器104和每个存储器106的操作状态可以改变以影响目标函数和功耗。然而,在其他实施例中,可以使用比全部处理器104和存储器106少的操作参数进行迭代。例如,在一些实施例中,处理器104和少于全部存储器106的操作参数可以被迭代。在其他实施例中,处理器104和每个存储器106均可以具有可被迭代的多个操作参数。
不管怎样,可以迭代多个操作参数。具体地,由于可以改变多个以及有可能是许多个操作参数,所以发现解会是困难的。具体地,发现解可以是NP困难(NP-hard)。因此,操作参数可以被迭代地改变为在较短的时间内达到基本最优解。即,虽然在一些实施例中,操作状态可以是最优状态,但是在其他实施例中,操作状态不会是针对给定目标函数的最优状态;然而,可以在较小量的时间内达到并可以在运行时间发现该操作状态。由于较少的时间发现最优解,所以在一些实施例中,系统100可以在操作期间并在这些功率限制112内对改变功率限制112进行响应,目标函数可以被最优化。
在特定示例中,可以将功率限制112设定为10W。诸如活动处理器104的数量较少或者存储器106的尺寸较小的较低的并行性(parallelism)可以实现较低的功率限制112。此外,存储器106的不同的操作状态(诸如单级单元(SLC)编程)也可以实现功率限制112。目标函数可以表示应当使用哪个方法。例如,如果目标函数是为了最好的性能,则可以降低容量而使用SLC编程配置。然而,可以不改变活动处理器104的数量或存储器106的其他方面以降低并行性,因此不会降低性能。在另一个示例中,目标函数可以表示较高的容量,因此可以使用较低的并行性配置。
在一些实施例中,目标函数可以不表示使用或指定特定操作参数或可改变的参数的特定方法。使用上述示例之一,目标函数不需要指定应当使用SLC编程。相反,目标函数可以仅表示应在功率限制112内使性能最大化。通过操作参数(包括表示要使用的特定单元级编程方法的操作参数)的迭代,可以实现功率限制112内的最优性能。虽然在一些实例中,操作参数可以表示应当使用SLC编程,但是在其他实例中,通过改变其他操作参数而不改变至SLC编程可以节省足够量的功率,同时仍然使性能最大化。
在特定实施例中,控制电路108可以被配置为以第一功率限制112操作之后接收不同的第二功率限制112。然后,控制电路108可以被配置为迭代地改变处理器104和存储器106的操作参数,以将与系统100相关联的目标函数最优化至功耗小于或等于第二功率限制的操作状态。
在实施例中,可以在运行时间执行目标函数的最优化。即,控制电路108可以被配置为在系统100运行时迭代操作参数114。当接收到新的功率限制112时,控制电路108可以被配置为在系统100运行的同时迭代操作参数以将系统100的操作状态改变为既在新的功率限制112内又再次使目标函数最优化。因此,在运行时间,功率限制112可以动态地改变,作为响应,可以改变系统100的操作以满足新的功率限制112。
在一些实施例中,控制电路108可以被配置为连续地迭代操作参数。例如,控制电路108可以被配置为周期性地(periodically)(诸如每毫秒)执行最优化序列(optimization sequence)。即,控制电路108可以被配置为每毫秒迭代操作参数以发现最优状态。尽管已经用毫秒作示例,但是也可以按照期望而使用其他的时间帧。例如,如果发现最优解的预期时间为10ms,则可以每隔20ms重复最优化序列。因此,当设定新的功率限制112时,控制电路108可以继续迭代,但是,是在新的功率限制112之内迭代。
在其他实施例中,控制电路108可以被配置为响应于特定条件而进行迭代。例如,控制电路108可以被配置为在下列条件开始迭代:在启动(startup)时、在从睡眠状态返回之后、在接收到新的功率限制112之后、在特定时间段之后等。
在一些实施例中,功率限制112的影响如果没有被消除则会减小。例如,系统100可以在下列条件下操作,即,将有可能实现功率限制112不存在或被设置为高于系统100的值。因此,这里描述的最优化可以不受功率限制112的约束。结果,可以单独使用操作参数来优化目标函数。操作参数可以跨越这些操作参数的全范围来迭代。在特定示例中,目标函数可以与寿命最大化相关联,而不考虑功耗。得到的操作参数的集合(set)可以不同于会使性能最优化而不考虑功耗的操作参数的集合。虽然已经将寿命最优化用作可以被不考虑功耗地最优化的目标函数的示例,但是可以使用任何目标函数。
图2A-图2F是根据各种实施例的迭代的示意图。在一些实施例中,可以使用不同的迭代方法来迭代操作参数。可以使用的迭代方法的示例包括Nelder-Mead方法和坐标下降方法;然而,在其他实施例中,可以使用其他迭代方法。Nelder-Mead方法将用作示例。Nelder-Mead方法是可以相对快速地收敛的迭代方法。在一些实施例中,作为启发式算法,Nelder-Mead方法不会一直提供操作参数的最优集合,但是其提供的操作参数可以是在相对较短的时间段内获得的足够好的解。
Nelder-Mead方法以具有n+1个顶点的初始单纯形开始,其中,n为操作参数的数量。顶点表示操作参数的集合。然后,该方法根据中间搜索的顶点来迭代步长(step)。在搜索开始时,操作参数的初始集合可以部分地基于之前的最优解以减少需要收敛的时间,然而,在其他实施例中,可以增加操作参数的新集合和/或随机集合,以避免局部最优(localoptima)。在一个实施例中,一个集合可以被初始化为之前的最优解,其他集合可以被初始化为随机集合。在另一个实施例中,两个或更多个集合可以被初始化为之前的最优解,同时其余集合被设定为随机集合。
参照图2A,使用两个操作参数的最优化将用作示例;然而,可以使任意数量的操作参数最优化。由于两个操作参数要被最优化,对操作参数的三个集合200、202和204计算目标函数。除了计算目标函数的结果外,还可以对三个集合200、202和204测量功耗。
在图2B中,发现最差的集合。这里,最差的集合是集合200。可以计算其余集合202和204的重心206。在图2C中,最差的集合200可以关于重心206被反射以产生新集合208。可以对新集合208计算目标函数,并且可以测量新的功耗。
在图2D中,新集合208可以是最差的集合。如果这样,可以产生更接近重心206的新集合210。再一次,可以对新集合210计算目标函数并可以测量新的功耗。可选择地,在图2E中,如果新集合208具有由目标函数得到的更优化的结果,则可以在与重心206相反的方向上产生新集合212。再一次,可以对新集合212计算目标函数并可以测量新的功耗。
在图2F中,可以产生集合220、222和224的初始组(group),可以对集合220、222和224计算目标函数并可以测量新的功耗。这里,集合220和222的从目标函数得到的最优结果可以小于集合224的从目标函数得到的最优结果。因此,可以产生更接近集合224的新集合226和228。再一次,可以对集合226和228计算目标函数并可以测量新的功耗。
尽管以上已经描述了选择新集合的特定方法,但是可以以不同的顺序使用其他方法。上述示例仅是示出操作参数的迭代的示例。
此外,虽然已经在确定是否使用或抛弃特定集合时使用了从目标函数得到的结果,但是也可以使用这些集合的功率测量。例如,如果针对特定集合的功率测量大于当前功率限制,则该集合可以认为是最差集合。在另一个示例中,如果所有集合具有大于当前功率限制的功率测量,则可以使用功率测量代替目标函数的结果来确定操作参数的新集合。即,具有最高功率测量的集合可以是被新集合替换的集合。
在另一个实施例中,控制电路108可以被配置为具有针对各种功率限制的预定操作参数。虽然这些预定操作参数可以得到比相关联的功率限制低的功耗,但是预定操作参数不会是给定目标函数的最优操作参数。因此,预定操作参数可以用作迭代的起始点,以在功率限制内使目标函数最优化。
回到图1A和图1B,在实施例中,处理器104可以被配置为接收与迭代有关的命令。例如,主机102可以将命令发送到处理器104。命令可以与系统100的与功耗和这里描述的最优化有关的各种操作相关联。命令可以表示在迭代地改变操作参数时使用的迭代方法。
在另一个示例中,命令可以表示要最优化的目标函数。在实施例中,在已经发现操作参数的最优状态之后,目标函数可以响应于命令而改变。迭代可以以新的目标函数来继续。因此,即使在同一功率限制112下,操作参数也可以因目标函数的改变而改变至不同的最优状态。
在又一个示例中,命令可以包括以上描述的功率限制112。可以在命令中接收与迭代有关的任何方面。然而,在一些实施例中,可以预先确定诸如迭代方法、目标函数等的一些方面。
虽然主机102将命令发送到处理器104已经用作示例,但是在其他实施例中,可以以不同的方式传达命令。例如,系统100可以将至控制电路108的接口提供给主机102。结果,主机102可以更直接地将命令传达给控制电路108。
图3是根据另一个实施例的具有易失性和非易失性存储器的系统的示意图。在该实施例中,系统100a可以类似于图1A的系统100。然而,存储器106包括非易失性存储器120和易失性存储器122。在特定实施例中,系统100a可以作为非易失性存储器120是大容量存储介质的SSD来操作。
在实施例中,易失性存储器122可以包括动态随机存取存储器(dynamic randomaccess memory,DRAM)。DRAM可以具有如下操作参数:诸如功率门控参数、自刷新参数、排的数量(a number of ranks)和通道的数量(a number of channels)。这些参数中的每个可以在DRAM对目标函数结果的贡献和功耗两方面具有影响。
非易失性存储器120可以包括诸如NAND闪存、自旋转移力矩磁RAM、相变存储器(PCM)等的非易失性随机存取存储器(NVRAM)。NVRAM可以具有如下操作参数:诸如读取重试参数、单级/多级单元模式开关、擦除电压和编程电压。
具体地,NAND闪存介质具有不对称的延迟和功耗特性。NAND单元在写入(编程)/擦除时会比在读取时花费更长的时间。此外,读取使用较低的电压操作(例如,5V),但是编程或其擦除需要较高的电压(例如,20V用于编程,-20V用于擦除)。此外,与读取时在每个NAND单元上方的感测过程不同的是,编程或擦除需要将电荷注入到浮置栅极,或者从浮置栅极中去除电荷。Fowler-Nordheim(FN)隧穿花费更长时间,结果,编程和擦除可以比读取慢几个数量级。
NAND闪存介质可以使用多级单元(MLC),每个NAND单元存储多个状态。由于每个存储单元的信息密度较高,使得MLC在给定的存储器中提供较大的逻辑容量。然而,MLC引进了复杂的读取/编程/擦除机制。MLC编程由两个阶段构成;LSB(最低有效位)和MSB(最高有效位)编程。编程利用ISPP(递增步长脉冲编程,Incremental Step Pulse Programming),通过以步长大小(step sizes)递增地注入电荷而对阈值电压进行精细控制。此外,MLCNAND引进另一个不对称特性:MSB编程因更多的阈值电平(3相比于SLC中的1)而比LSB编程花费更长的时间,因此使用精细控制以适当地设定阈值电压。在许多的NAND芯片中,MSB编程可以比LSB慢十倍。
FN隧穿使得能通过令阈值电压Vth移位来表示逻辑“1”和“0”。其正比于存储电荷Q。因此,一旦适当电荷注入浮置栅极或从浮置栅极斥出,则能够限定给定单元的逻辑状态。浮置栅极中的电荷量确定Vth,因此,对Vth进行读取可以被配置或编程。
然而,因为浮置栅极与基底之间的氧化物内部的电荷捕获,所以会发生单元Vth退化。结果,氧化物内部的电荷防止了适当的电荷注入和排斥。其结果是,从控制栅极测量的Vth在两个状态下都比较高。因此,利用智能编程/擦除机制,擦除/编程操作会随着每个单元的退化而花费更长时间。
除了这些不对称特性之外,NAND介质和其组织还可以引进并行性以在编程和擦除中隐藏NAND的较高延迟,该并行性包括多重平面(multi-plane)操作、交织交错(interleave)操作和多通道(multi-channel)操作。由于该并行性,意味着可以同时执行多个NAND操作,所以可应用异构并行性来满足功率约束。
以上描述了非易失性存储器120的各种不同特性。这些特性中的每个特性可以是可配置的。非易失性存储器120可以具有与上述操作有关的各种操作参数。
处理器104可以具有各种操作参数。例如,操作参数可以包括处理器104的动态电压及频率缩放(DVFS)参数和功率门控参数。在另一个示例中,处理器可以具有多个核。在又一个实施例中,多个处理器104可以呈现为具有一定数量的可变化的活动处理器104。
在特定示例中,处理器104可以在各种电源电压下是可操作的。电源电压可以是第一操作参数。处理器104可以包括多个核,每个核可以被启用或禁用。操作核的数量可以是第二操作参数。易失性存储器122可以包括可被启用或禁用的排的数量(a number ofranks)和可变化的电源电压,形成了两个附加的操作参数。非易失性存储器120可以在单级单元模式或多级单元模式下是可操作的。非易失性存储器120也可以包括可变化的编程电压。单元模式和编程电压可以是两个附加的操作参数。
如上所述,对于给定的功率限制,可以迭代操作参数以使目标函数最优化。解的示例包括:1.35V电源电压的处理器104、被启用的四个处理器104核中的两个、被启用的易失性存储器122的16排之外的10排、电源电压1.1V的易失性存储器122、非易失性存储器120的单级单元模式以及非易失性存储器120的10V编程电压。
在特定实施例中,系统100可以是包括多个处理器104、多个非易失性存储器120以及多个易失性存储器122的SSD。处理器104可以消耗高性能SSD的总功耗的较大部分,因此,可以将处理器104视为要降低其功耗的候选者。类似地,DRAM和NVM介质可以是降低功率的独立候选者。这些组件可以联合操作以在隐藏非易失性存储器120的较低写入特性和FTL开销的同时提供高性能。这种系统可以是相对复杂的,因此,在控制每个组件时预测性能影响会相对地困难。结果,以将要获得最佳省电效果同时又示出最小性能劣化的方式来改变组件或多个组件的操作参数的方法不会是容易想到的。因SSD的复杂性,导致解决该问题会是困难并且耗时的。如这里描述的将操作参数迭代可以在可接受的时间帧内允许有更多的最优解。
在实施例中,控制电路108可以被配置为在至少两个连续的最优序列之中识别具有保持不变的状态的操作参数,并且为了至少一个未来的最优序列而从操作参数中去除所识别的操作参数。例如,控制电路108可以包括存储器,该存储器被配置为存储从之前的最优序列得到的结果,即,针对最优解的操作参数的状态。
结束多个最优循环,可以发现多个最优解并将其存储在存储器中。以下表1列出了三个示例最优解的操作参数的状态,每个示例最优解是在最优化序列之后的优化结果。
表1
在该示例中,在每个最优序列之后的多个最优解中的每个最优解中的存储器排(memory rank)的数量是相同的。存储器排可以被识别为保持不变的操作参数。作为将存储器排识别为保持不变的操作参数的结果,为了至少一些的未来的迭代,可以从被迭代的操作参数的组中去除该存储器排。在该示例中,新的操作参数集合从5个操作参数减少到4个操作参数。结果,进一步的最优化可以因减少了维度而更快速地达到最优解。虽然已经使用这些特定操作参数作为示例,但是可以分析任何操作参数,以确定一个或更多个操作参数是否已经在足够多量的最优化循环内保持不变以成为用于去除的候选者。
在实施例中,控制电路108可以能够把各种操作参数设定为离散值。控制电路108可以被配置为将离散值写入寄存器、将离散值传达到另一个组件等以设定操作参数。例如,排(rank)的数量可以是仅可设定为整数。在另一个示例中,处理器电压可以是可设定为非整数值,但是仅在一定范围内的离散步长(discrete steps)中。因此,如果离散值没有改变,则操作参数可以被控制电路108确定为不变的。
在实施例中,控制电路108可以被配置为将被去除的操作参数恢复到操作参数的集合。例如,如果功率限制被改变、经过了预定量的时间、系统100a的使用已经改变等,则去除的参数可以通过在控制电路108的存储器中设定表示要迭代哪一个操作参数的标记(flag)而返还。可改变系统100a的操作的任何事件可以用作触发器,以返还被去除的操作参数。
图4是根据另一个实施例的具有功率计(meter)的系统的示意图。在实施例中,处理器104和存储器106中的至少一个包括被配置为测量功率的功率计电路(PM)130。在该实施例中,处理器104和存储器106均包括功率计电路130。
功率计电路130可以采取各种形式。例如,热传感器或功率传感器可以出现在特定装置中。放大器、模数转换器、缓冲器、寄存器等可以是功率计电路130的部分,以将物理效应转换为可以被控制电路108使用的数字化的值。例如,信号可以由传感器所感测、被数字化并且存储在寄存器中。寄存器可以被控制电路108读取,被处理器104读取并与控制电路108通信等以从功率计电路130读取功率。
来自这些功率计电路130的读数可以被归一化(normalized)并且被组合为功耗值。因此,当操作时,控制电路108可以接收当前操作参数的集合的功率测量。当使用操作参数的新集合时,可以执行另一个功率测量。
返回图1A,在实施例中,控制电路108可以被配置为基于一个或更多个操作参数来估计处理器104和存储器106的至少一者的功耗。例如,可以从操作参数来估计功耗。此外,可以从处理器104和存储器106的使用来估计功耗。在特定示例中,间隔之内的请求或活动的数量可以被计数。系统的操作参数和其他各方面的测量可以单独或结合起来使用以建立功率测量。在一些实施例中,功耗的估计可以用于系统100的一些装置,同时可以在其他装置中使用与图4的功率计电路130类似的功率计。不管怎样,可以将功率测量组合为针对给定迭代的功率测量。
图5是根据另一个实施例的系统的示意图。在该实施例中,控制电路108是处理器104的一部分。例如,可以通过处理器104上运行的程序来执行上述控制电路108的操作。例如,处理器104可以包括一个或更多个存储器总线接口,这些存储器总线接口被配置为使得处理器104能够与存储器106进行通信。通过存储器总线接口,处理器104可以被配置为设定存储器的操作参数。此外,处理器104上运行的程序可以访问处理器104的寄存器,访问处理器104的电源系统等,以在迭代期间改变处理器104的操作参数。
图6是根据另一实施例的系统的示意图。在该实施例中,系统100d类似图1A的系统100。然而,在该实施例中,系统100d包括多个装置107。每个装置107具有可以被控制电路108改变的一个或更多个操作参数。控制电路108可以被配置为接收功率限制、测量装置的功耗并且迭代地改变装置的操作参数,以使与系统100d相关联的目标函数最优化至功耗小于或等于功率限制的操作状态。换言之,这里描述的相对于存储器106的功率限制内的最优化也可以应用于所提供的普通装置,这些装置具有可配置的操作参数。
图7是根据实施例的迭代方法的流程图。参照图1A、图1B和图7,在该实施例中,在600中,将操作参数设定为特定状态。例如,控制电路108可以设定处理器104的电源电压、第一存储器106的排的数量和另一个存储器106的编程电压。控制电路108可以被配置为与一个或更多个稳压器通信以设定各种电压并与第一存储器106通信以设定排的数量。
在602中,可以测量功耗。例如,控制电路108可以与处理器104和存储器106通信以读取功率寄存器、温度寄存器等。然后,控制电路108可以将来自处理器104和存储器106的值组合为功耗测量。
在604中,可以计算操作参数的当前状态的目标函数。例如,控制电路108可以与处理器104和存储器106通信,以确定可以对目标函数作出贡献的值。例如,处理器104可以随着时间的推移追踪读取/写入请求、这种请求的延迟等。数据的收集可以通过处理器104和存储器106来执行、通过控制电路108来执行、或者通过这种组件的组合来执行。不管怎样,控制电路108可以获得针对目标函数的值。
在606中,控制电路108确定是否已经针对足够数量的操作参数的集合进行了测量。如果否,则选择操作参数的另一个集合并且在600中设定,如上所述在602和604中进行测量。例如,如果当使用Nelder-Mead方法时被改变的操作参数的数量为10,则可以由控制电路108重复针对操作参数状态的11个集合的测量。
当已经测量了足够数量的集合时,控制电路108可以在608中进行最优状态的确定。例如,控制电路108可以确定迭代是否收敛至最优状态。如果否,则可以根据当前迭代方法执行新的迭代,以对操作参数状态的一个或更多个其他集合进行测量。
在610中,在已经识别出操作参数状态的最优集合之后,可以设定针对另一个最优序列的初始集合的最优参数。例如,控制电路108可以将操作参数状态的初始集合中的一个设定为之前的最优集合中的状态,并且将其他初始集合设定为随机集合。如上所述,操作参数可以被再次迭代。
图8是根据实施例的迭代方法的流程图。参照图1A、图1B和图8,在该实施例中,该方法可以类似于图7的方法。然而,在608中发现操作参数的最优集合之后,分析该集合与操作参数的之前的最优集合以确定一个或更多个操作参数是否已经在足够数量的操作序列中保持不变。如果这样,在612中为了未来的迭代,从操作参数的集合中去除那些参数。例如,控制电路108可以把要去除的操作参数标志为在控制电路108的存储器中存储的数据结构中去除。如上所述,在608中迭代可以继续。
返回图1A和图1B,在实施例中,系统100可以考虑主机102的新控制机制。例如,主机102可以改变系统100的功耗。主机102可以改变装置的目标函数。在主机102上运行的系统管理软件可以运行新的系统调用或扩展的系统调用,以改变系统100的这些参数。如上所述,系统100可以接收与这些参数有关的命令。通过这些系统调用,主机102可以生成命令并且将命令发送到系统100。
图9是根据实施例的服务器的示意图。在该实施例中,服务器900可以包括单机服务器、机架式安装服务器、刀片服务器等。服务器900包括系统902和处理器904。处理904结合到系统902。虽然仅示出一个系统902,但是可以存在任意数量的系统902。系统902可以是上述相应的系统(诸如系统100、100a、100b、100c、100d等)中的任意一个。例如,系统902可以是SSD。SSD可以对服务器900提供数据存储。
图10是根据实施例的服务器系统的示意图。在该实施例中,服务器系统1000包括多个服务器1002-1至1002-N。多个服务器1002各自结合到管理器1004。一个或更多个服务器1002可以类似于上述服务器900。
管理器1004被配置为管理服务器系统1000的服务器1002和其他组件。在实施例中,管理器1004可以被配置为管理服务器1002的功耗。例如,由于每个服务器1002可以包括如上所述的诸如系统100、100a、100b、100c、100d等的系统,所以管理器1004可以与这些系统通信以设定功率限制。在特定示例中,管理器1004可以被管理员配置为降低服务器系统1000的功耗,但是维持性能的特定水平。利用仅SSD的TDP,管理器1004可以在睡眠或其他不工作的状态下仅具有放置服务器1002的系统的选择。然而,利用根据实施例的系统,可以实现功率限制和操作状态的更细的粒度。例如,管理器1004可以与服务器1002的处理器通信以将命令发送到服务器1002的系统来设定功率限制,并且将目标函数设定为最优性能。结果,服务器系统1000的系统可以迭代地改变操作参数,以在由管理器1004设定的特定功率限制内使性能最优化。
图11是根据实施例的数据中心的示意图。在该实施例中,数据中心1100包括多个服务器系统1102-1至1102-N。服务器系统1102可以类似于以上图10中描述的服务器系统1000。服务器系统1102结合到诸如因特网的网络1104。因此,服务器系统1102可以通过网络1104与各种节点1106-1至1106-M进行通信。例如,节点1106可以是客户端计算机、其他服务器、远程数据中心、存储系统等。
尽管已经根据特定实施例描述了结构、方法和系统,但是本领域普通技术人员将容易认识到,对公开的实施例的许多变化是可能的,因此,任何变化应当认为在这里公开的设备、方法和系统的精神和范围内。因此,在不脱离所附权利要求的精神和范围的情况下,本领域普通技术人员可以进行许多修改。
Claims (18)
1.一种用于控制功耗的系统,包括:
处理器;
多个存储器;以及
控制电路,被配置为:
接收功率限制;
测量处理器和存储器的功耗;
迭代地改变处理器和存储器的多个操作参数以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态;
在至少两个连续的最优化序列之中,识别具有已保持不变的状态的操作参数;以及
为了至少一个未来最优化序列,从所述多个操作参数中去除识别的操作参数,
其中,迭代地改变处理器和存储器的多个操作参数以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态的步骤包括:
使用功耗小于或等于功率限制的操作参数的状态的多个集合中的每个集合对处理器和存储器进行操作;以及
针对操作参数的状态的所述多个集合中的每个集合来计算目标函数的结果。
2.根据权利要求1所述的系统,其中,处理器和存储器的所述多个操作参数包括:处理器的至少一个操作参数、存储器中的第一存储器的至少一个操作参数以及存储器中的第二存储器的至少一个操作参数。
3.根据权利要求1所述的系统,其中,存储器包括动态随机存取存储器和非易失性随机存取存储器。
4.根据权利要求3所述的系统,其中,操作参数包括动态随机存取存储器的功率门控参数、自刷新参数、排的数量和通道的数量中的至少一者。
5.根据权利要求3所述的系统,其中,操作参数包括非易失性随机存取存储器的读取重试参数、单级/多级单元模式开关、擦除电压和编程电压中的至少一者。
6.根据权利要求1所述的系统,其中,操作参数包括处理器的动态电压及频率缩放参数和功率门控参数中的至少一者。
7.根据权利要求1所述的系统,其中,处理器和存储器中的至少一者包括被配置为测量功率的功率计电路。
8.根据权利要求1所述的系统,其中,控制电路还被配置为基于所述多个操作参数中的一个或更多个操作参数来估计处理器和存储器中的至少一者的功耗。
9.根据权利要求1所述的系统,其中,控制电路还被配置为:
接收第二功率限制;以及
迭代地改变处理器和存储器的操作参数以使与系统相关联的目标函数最优化至功耗小于或等于第二功率限制的操作状态。
10.根据权利要求1所述的系统,其中,所述处理器包括所述控制电路。
11.一种用于控制功耗的方法,包括:
接收控制电路中的功率限制;
通过所述控制电路来测量处理器和多个存储器的功耗;
通过所述控制电路来迭代地改变处理器和存储器的多个操作参数,以使与处理器和存储器相关联的目标函数最优化至功耗小于或等于功率限制的操作状态;
在至少两个连续的最优化序列之中,识别具有已保持不变的状态的操作参数;以及
为了至少一个未来最优化序列,从所述多个操作参数中去除识别的操作参数,
其中,通过所述控制电路来迭代地改变处理器和存储器的多个操作参数,以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态的步骤包括:
使用功耗小于或等于功率限制的操作参数的状态的多个集合中的每个集合对处理器和存储器进行操作;以及
针对操作参数的状态的所述多个集合中的每个集合来计算目标函数的结果。
12.根据权利要求11所述的方法,其中,存储器包括动态随机存取存储器和非易失性随机存取存储器。
13.根据权利要求11所述的方法,还包括:
通过所述控制电路来接收第二功率限制;以及
通过所述控制电路来迭代地改变处理器和存储器的操作参数,以使与处理器和存储器相关联的目标函数最优化至功耗小于或等于第二功率限制的操作状态。
14.根据权利要求11所述的方法,还包括:
接收表示在迭代地改变操作参数时要使用的迭代方法、目标函数和功率限制中的至少一者的命令。
15.根据权利要求11所述的方法,其中,通过所述控制电路迭代地改变操作参数的步骤包括:根据Nelder-Mead方法和坐标下降方法中的至少一者由所述控制电路来迭代地改变操作参数。
16.根据权利要求15所述的方法,还包括:通过所述控制电路以之前的最优化的操作状态的多个集合来初始化操作参数的迭代。
17.根据权利要求15所述的方法,还包括:通过所述控制电路以操作状态的随机集合来初始化操作参数的迭代。
18.一种用于控制功耗的系统,包括:
多个装置;以及
控制电路,被配置为:
接收功率限制;
测量所述装置的功耗;
迭代地改变所述装置的多个操作参数以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态;
在至少两个连续的最优化序列之中,识别具有已保持不变的状态的操作参数;以及
为了至少一个未来最优化序列,从所述多个操作参数中去除识别的操作参数,
其中,迭代地改变所述装置的多个操作参数以使与系统相关联的目标函数最优化至功耗小于或等于功率限制的操作状态的步骤包括:
使用功耗小于或等于功率限制的操作参数的状态的多个集合中的每个集合对处理器和存储器进行操作;以及
针对操作参数的状态的所述多个集合中的每个集合来计算目标函数的结果。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562218527P | 2015-09-14 | 2015-09-14 | |
US62/218,527 | 2015-09-14 | ||
US14/967,266 US9733684B2 (en) | 2015-09-14 | 2015-12-11 | System and method for controlling power consumption |
US14/967,266 | 2015-12-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106527652A CN106527652A (zh) | 2017-03-22 |
CN106527652B true CN106527652B (zh) | 2021-07-30 |
Family
ID=58238363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610739044.5A Active CN106527652B (zh) | 2015-09-14 | 2016-08-26 | 用于控制功耗的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US9733684B2 (zh) |
JP (1) | JP6788420B2 (zh) |
KR (1) | KR102318541B1 (zh) |
CN (1) | CN106527652B (zh) |
TW (1) | TWI702539B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9733684B2 (en) * | 2015-09-14 | 2017-08-15 | Samsung Electronics Co., Ltd. | System and method for controlling power consumption |
US11216323B2 (en) | 2015-09-16 | 2022-01-04 | Samsung Electronics Co., Ltd. | Solid state memory system with low power error correction mechanism and method of operation thereof |
US10607660B2 (en) | 2017-07-20 | 2020-03-31 | Samsung Electronics Co., Ltd. | Nonvolatile memory device and operating method of the same |
US10529407B2 (en) | 2017-07-20 | 2020-01-07 | Samsung Electronics Co., Ltd. | Memory device including a plurality of power rails and method of operating the same |
US10535394B2 (en) | 2017-07-20 | 2020-01-14 | Samsung Electronics Co., Ltd. | Memory device including dynamic voltage and frequency scaling switch and method of operating the same |
US10181351B1 (en) * | 2017-08-30 | 2019-01-15 | Micron Technology, Inc. | Increased NAND performance under high thermal conditions |
KR20190093400A (ko) | 2018-02-01 | 2019-08-09 | 삼성전자주식회사 | 반도체 메모리 장치 및 반도체 메모리 장치를 포함하는 전자 장치 |
KR102549346B1 (ko) * | 2018-07-24 | 2023-06-28 | 삼성전자주식회사 | 솔리드 스테이트 드라이브 및 그의 메타 데이터 액세스 방법 |
TWI672705B (zh) * | 2018-11-23 | 2019-09-21 | 宏碁股份有限公司 | 儲存裝置、控制方法及控制器 |
US11921555B2 (en) * | 2019-07-26 | 2024-03-05 | Samsung Electronics Co., Ltd. | Systems, methods, and devices for providing power to devices through connectors |
US20210294407A1 (en) * | 2020-03-17 | 2021-09-23 | Micron Technology, Inc. | Setting a power mode based on a workload level in a memory sub-system |
CN111752367B (zh) * | 2020-06-12 | 2021-10-26 | 深圳忆联信息系统有限公司 | 固态硬盘功耗降低方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103201702A (zh) * | 2010-11-09 | 2013-07-10 | 国际商业机器公司 | 通过改变计算工作负载进行的随时间变化的能量源的能量捕捉 |
US8543851B2 (en) * | 2010-12-29 | 2013-09-24 | Stmicroelectronics, Inc. | System and method for microeconomic optimization of power usage in a device |
CN104823130A (zh) * | 2012-12-03 | 2015-08-05 | 高通股份有限公司 | 自适应电压缩放的系统和方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539881B2 (en) * | 2006-04-15 | 2009-05-26 | Hewlett-Packard Development Company, L.P. | System and method for dynamically adjusting power caps for electronic components based on power consumption |
US8001407B2 (en) * | 2006-10-31 | 2011-08-16 | Hewlett-Packard Development Company, L.P. | Server configured for managing power and performance |
US7725409B2 (en) * | 2007-06-05 | 2010-05-25 | Motorola, Inc. | Gene expression programming based on Hidden Markov Models |
AU2008283857A1 (en) | 2007-08-06 | 2009-02-12 | Great Lakes Biosciences, Llc | Methods and apparatus for electrical stimulation of tissues using signals that minimize the effects of tissue impedance |
US20090132842A1 (en) * | 2007-11-15 | 2009-05-21 | International Business Machines Corporation | Managing Computer Power Consumption In A Computer Equipment Rack |
US20110047316A1 (en) | 2009-08-19 | 2011-02-24 | Dell Products L.P. | Solid state memory device power optimization |
US8880202B2 (en) * | 2010-07-09 | 2014-11-04 | Emerson Process Management Power & Water Solutions, Inc. | Optimization system using an iteratively coupled expert engine |
US8738937B2 (en) * | 2010-07-13 | 2014-05-27 | Intel Corporation | Method and apparatus to limit memory power |
US8826051B2 (en) * | 2010-07-26 | 2014-09-02 | Apple Inc. | Dynamic allocation of power budget to a system having non-volatile memory and a processor |
US8364103B2 (en) * | 2010-09-21 | 2013-01-29 | Intel Mobile Communications GmbH | Adaptive adjustment of active area for power amplifier |
US20130097433A1 (en) | 2011-10-18 | 2013-04-18 | Stec, Inc. | Systems and methods for dynamic resource management in solid state drive system |
US9075610B2 (en) * | 2011-12-15 | 2015-07-07 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including thread consolidation |
CN104246651B (zh) * | 2012-03-29 | 2018-04-27 | 英特尔公司 | 平台中的动态功率限值共享 |
US9317212B2 (en) | 2012-12-18 | 2016-04-19 | Intel Corporation | Method and apparatus for controlling a storage device |
US9280191B2 (en) * | 2013-01-21 | 2016-03-08 | Dell Products Lp. | Systems and methods for power supply configuration and control |
US8854929B1 (en) * | 2013-03-06 | 2014-10-07 | Western Digital Technologies, Inc. | Disk drive calibrating laser power and write current for heat assisted magnetic recording |
US9213400B2 (en) | 2013-03-14 | 2015-12-15 | Intel Corporation | Apparatus and method to provide near zero power DEVSLP in SATA drives |
US9438242B2 (en) * | 2013-07-12 | 2016-09-06 | Freescale Semiconductor, Inc. | Systems and methods for reducing power consumption in semiconductor devices |
US9652026B2 (en) * | 2014-12-21 | 2017-05-16 | Qualcomm Incorporated | System and method for peak dynamic power management in a portable computing device |
US10101786B2 (en) | 2014-12-22 | 2018-10-16 | Intel Corporation | Holistic global performance and power management |
US9733684B2 (en) * | 2015-09-14 | 2017-08-15 | Samsung Electronics Co., Ltd. | System and method for controlling power consumption |
US10241701B2 (en) | 2015-09-16 | 2019-03-26 | Samsung Electronics Co., Ltd. | Solid state memory system with power management mechanism and method of operation thereof |
US9711232B2 (en) | 2015-09-22 | 2017-07-18 | Samsung Electronics Co., Ltd. | Dynamic non-volatile memory operation scheduling for controlling power consumption of solid-state drives |
-
2015
- 2015-12-11 US US14/967,266 patent/US9733684B2/en active Active
-
2016
- 2016-05-26 KR KR1020160065028A patent/KR102318541B1/ko active IP Right Grant
- 2016-06-03 TW TW105117503A patent/TWI702539B/zh active
- 2016-08-08 JP JP2016155467A patent/JP6788420B2/ja active Active
- 2016-08-26 CN CN201610739044.5A patent/CN106527652B/zh active Active
-
2017
- 2017-07-11 US US15/647,220 patent/US10359822B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103201702A (zh) * | 2010-11-09 | 2013-07-10 | 国际商业机器公司 | 通过改变计算工作负载进行的随时间变化的能量源的能量捕捉 |
US8543851B2 (en) * | 2010-12-29 | 2013-09-24 | Stmicroelectronics, Inc. | System and method for microeconomic optimization of power usage in a device |
CN104823130A (zh) * | 2012-12-03 | 2015-08-05 | 高通股份有限公司 | 自适应电压缩放的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US9733684B2 (en) | 2017-08-15 |
KR102318541B1 (ko) | 2021-10-29 |
KR20170032160A (ko) | 2017-03-22 |
US20170075401A1 (en) | 2017-03-16 |
US20170308136A1 (en) | 2017-10-26 |
TWI702539B (zh) | 2020-08-21 |
JP2017059223A (ja) | 2017-03-23 |
CN106527652A (zh) | 2017-03-22 |
JP6788420B2 (ja) | 2020-11-25 |
US10359822B2 (en) | 2019-07-23 |
TW201710891A (zh) | 2017-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106527652B (zh) | 用于控制功耗的系统和方法 | |
US10372373B1 (en) | Adaptive power balancing for memory device operations | |
AU2011203893B2 (en) | Controlling and staggering operations to limit current spikes | |
US9977487B2 (en) | Dynamic non-volatile memory operation scheduling for controlling power consumption of solid-state drives | |
US8438356B2 (en) | Flash memory controller | |
US12072246B2 (en) | Adaptive throttling | |
CN107408018B (zh) | 用于在固态驱动器中适应垃圾收集资源分配的机制 | |
US11847327B2 (en) | Centralized power management in memory devices | |
CN116126214A (zh) | 存储器控制器和包括其的存储器系统的操作方法 | |
CN112116931B (zh) | 固态驱动(ssd)系统的智能省电模式 | |
US20220413583A1 (en) | Precise power cycle management in data storage devices | |
Luo et al. | Peak-to-average pumping efficiency improvement for charge pump in Phase Change Memories | |
AU2014100558B4 (en) | Controlling and staggering operations to limit current spikes | |
WO2016064554A1 (en) | Storage system power management using controlled execution of pending memory commands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |