TWI551985B - 用以管理裝置之熱分佈之方法及裝置以及相關的非暫時性機器可讀媒體 - Google Patents

用以管理裝置之熱分佈之方法及裝置以及相關的非暫時性機器可讀媒體 Download PDF

Info

Publication number
TWI551985B
TWI551985B TW104117025A TW104117025A TWI551985B TW I551985 B TWI551985 B TW I551985B TW 104117025 A TW104117025 A TW 104117025A TW 104117025 A TW104117025 A TW 104117025A TW I551985 B TWI551985 B TW I551985B
Authority
TW
Taiwan
Prior art keywords
bandwidth range
input
priority
thermal
bandwidth
Prior art date
Application number
TW104117025A
Other languages
English (en)
Other versions
TW201606501A (zh
Inventor
厄梅許 蘇瑞席 維萱帕恩
德瑞克R 庫馬
克里斯多福 約翰 薩康
羅素 亞歷山大 布蘭
泰賈斯 艾倫 巴荷卡
薛喬 凱茲
喬瑟夫 二世 梭寇
馬修 約翰 拜歐
Original Assignee
蘋果公司
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 蘋果公司 filed Critical 蘋果公司
Publication of TW201606501A publication Critical patent/TW201606501A/zh
Application granted granted Critical
Publication of TWI551985B publication Critical patent/TWI551985B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D23/00Control of temperature
    • G05D23/19Control of temperature characterised by the use of electric means
    • G05D23/1917Control of temperature characterised by the use of electric means using digital means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • 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

Description

用以管理裝置之熱分佈之方法及裝置以及相關的非暫時性機器可讀媒體 [相關申請]
申請人主張2014年5月30日申請之先前、共同代決臨時申請案第62/006,006號之優先權之權益,該先前、共同代決臨時申請案之全文以引用方式併入。
本發明通常係關於裝置熱管理,且更特定言之,係關於藉由該裝置輸入/輸出之選擇性節流而管理裝置熱分佈。
裝置通常可包括用於儲存由裝置使用之資料之儲存器。儲存器可為硬碟機(HDD)、固態裝置(SDD)、閃光及/或由裝置使用之另一類型的儲存器。裝置進一步使用不同類型之輸入/輸出(I/O)操作以儲存、存取及/或調處儲存或待儲存於儲存器上之資料(例如,寫入、讀取、查詢、建立及/或刪除操作)。
此等I/O操作之每一者將使得裝置消耗導致由裝置產生之熱之電源。此產生之熱可添加至施加至裝置之熱負載。過度的熱負載可影響裝置效能,且在極端情況下,可導致裝置關機。現存裝置可藉由限制使用哪些儲存器組用於所有I/O操作而減輕熱負載,而不考慮I/O操作是否係用於批次處理或支援使用者介面操作之處理程序。
描述一種方法及一種裝置之設備,該裝置藉由選擇性地節流該 裝置之輸入/輸出操作管理一裝置之一熱分佈。在一例示性實施例中,該裝置監視該裝置之該熱分佈,其中該裝置執行利用該裝置之儲存器之複數個處理程序。另外,該複數個處理程序包括一高優先級處理程序及一低優先級處理程序。若該裝置之該熱分佈超過一熱臨限值,則該裝置減小用於該低優先級處理程序之一第一頻寬範圍,且維持用於該高優先級處理程序之一第二頻寬範圍。該裝置進一步使用該第一頻寬範圍來處理該低優先級處理程序之一儲存請求,且使用該第二頻寬範圍來處理該高優先級處理程序之一儲存請求。
本發明亦描述其他方法及設備。
100‧‧‧裝置
102‧‧‧熱精靈協助程式
104‧‧‧系統管理控制器
106‧‧‧感測器
108‧‧‧儲存控制器
110‧‧‧儲存器
112‧‧‧作業系統
114‧‧‧輸入/輸出操作
200A~200D‧‧‧熱頻帶
222A~222D‧‧‧熱頻帶
242A~242D‧‧‧熱頻帶
300‧‧‧表格
302‧‧‧行
304A~304C‧‧‧行
400‧‧‧處理程序
402~410‧‧‧區塊
500‧‧‧處理程序
502~510‧‧‧區塊
600‧‧‧輸入/輸出節流模組
602‧‧‧接收熱資料模組
604‧‧‧比較較高熱臨限值模組
606‧‧‧比較較低熱臨限值模組
608‧‧‧增加輸入/輸出節流模組
610‧‧‧減小輸入/輸出節流模組
700‧‧‧輸入/輸出處理模組
702‧‧‧分配貯體模組
704‧‧‧選擇輸入/輸出模組
706‧‧‧處理輸入/輸出模組
708‧‧‧遞減貯體模組
800‧‧‧資料處理系統
803‧‧‧匯流排
805‧‧‧微處理器
807‧‧‧唯讀記憶體
809‧‧‧揮發性隨機存取記憶體
811‧‧‧非揮發性記憶體/大容量儲存器
813‧‧‧顯示控制器及顯示裝置
813‧‧‧輸入/輸出控制器
815‧‧‧輸入/輸出裝置
900‧‧‧資料處理系統
901‧‧‧記憶體
903‧‧‧無線收發器
905‧‧‧音訊輸入/輸出子系統
909‧‧‧顯示控制器及顯示裝置
911‧‧‧處理系統
913‧‧‧輸入裝置
915‧‧‧輸入/輸出裝置
917‧‧‧通信埠
本發明以實例方式說明,且未限制其中相同參考指示類似元件之附圖之圖式。
圖1為裝置之一項實施例之方塊圖,該裝置藉由選擇性地節流裝置之輸入/輸出(I/O)操作減輕裝置之熱分佈。
圖2A至圖2C為用於不同等級之I/O節流之熱頻之說明。
圖3為用於不同等級之I/O節流之優先級頻寬百分比的表格說明。
圖4為基於裝置之熱資料管理I/O節流之方法之一項實施例的流程圖。
圖5為處理I/O操作之方法之一項實施例之流程圖。
圖6為基於該裝置之該熱資料管理I/O節流之熱精靈協助程式之一項實施例之方塊圖。
圖7為處理I/O操作之儲存控制器之一項實施例之方塊圖。
圖8說明典型電腦系統之一個實例,該典型電腦系統可用於結合本文中所述之實施例。
圖9展示資料處理系統之實例,該資料處理系統可用於本發明之一項實施例。
描述方法及裝置之設備,該裝置藉由選擇性地節流裝置之輸入/輸出操作管理裝置之熱分佈。在以下描述中,許多特定細節經闡述以對本發明之實施例提供詳盡解釋。然而,熟習此項技術者將顯而易見,本發明之實施例可在無此等特定細節下實踐。在其他情況下,熟知之組件、結構及技術在細節上還未展示以便不模糊對此描述之理解。
說明書中對「一項實施例」或「一實施例」之引用意謂與可包括於本發明之至少一項實施例之實施例有關之所述特定特徵、結構或特性。在說明書中之各個位置中之片語「在一項實施例中」的外表不必要都指代相同實施例。
在以下描述及專利申請範圍中,可使用術語「經耦接」及「經連接」及其衍生物。應理解,此等術語未意欲為彼此之同義字。「經耦接」用於指示兩個或兩個以上元件,該兩個或兩個以上元件可或不可彼此、協作或互相作用直接以實體或電氣連接。「經連接」用於指示在彼此耦接之兩個或兩個以上元件之間建立通信。
隨後之圖式中所繪處理程序由包含硬體(例如,電路、專用邏輯等)、軟體(諸如執行於通用電腦系統或專用機器之軟體)或兩者之組合之處理邏輯執行。儘管按照一些順序操作在下面描述處理程序,但應瞭解,所述操作中之一些可以不同次序執行。此外,一些操作可並行地而非按順序執行。
術語「伺服器」、「客戶端」及「裝置」意欲通常指代資料處理系統而非特定地指代用於伺服器、客戶端及/或裝置之特定形狀因素。
本發明描述方法及裝置之設備,該裝置藉由選擇性地節流裝置之輸入/輸出操作而管理裝置之熱分佈。在一項實施例中,裝置藉由 限制用於I/O優先級之一者、一些或所有I/O優先級之優先級頻寬範圍選擇性地節流I/O操作,使得整體I/O減小,但用於較高優先級處理程序之該I/O操作不受影響或所受影響小於用於較低優先級處理程序之I/O操作之影響。在一項實施例中,裝置監視裝置之熱資料。若熱資料達成或超過一或多個熱臨限值,則裝置選擇性地節流用於不同優先級之I/O操作。在此實施例中,每一I/O操作具有優先級。舉例而言,與使用者介面操作相關聯之I/O操作將具有較高優先級,而與批次處理(例如,搜尋索引、備份、同步)相關聯之I/O操作將具有較低優先級。或者,I/O操作可基於與I/O操作相關聯之執行緒得到優先級。在一項實施例中,處理程序或執行緒可在不同的I/O優先級發出I/O操作,此取決於I/O操作之性質。裝置可包括多I/O優先級。優先級中之每一者具有相關聯之頻寬範圍。頻寬範圍為在特定時段每一處理程序可使用之容許I/O頻寬。裝置藉由基於裝置上之當前熱負載限制用於不同優先級之頻寬範圍選擇性地節流整體裝置I/O。舉例而言,且在一項實施例中,若裝置熱負載增加,則裝置可限制最低或較低優先級頻寬範圍。此將降低此等較低優先級之I/O輸送量,但使較高優先級之I/O輸送量未改變。當裝置上之熱負載進一步增加時,裝置可或者增加較低優先級之I/O節流且/或開始節流較高優先級。在另一實施例中,隨著裝置上之熱負載減小,裝置可選擇性地放寬不同優先級之I/O節流。
圖1為裝置100之一項實施例之方塊圖,該裝置100藉由選擇性地節流裝置之(I/O)操作減輕裝置之熱分佈。在一項實施例中,裝置100可為個人電腦、膝上型電腦、伺服器、行動裝置(例如,智慧型電話、膝上型電腦、個人數位助理、音樂播放裝置、遊戲裝置等)、網路元件(例如,路由器、交換器、閘道器等)及/或能夠執行多個應用程式之任何裝置。在一項實施例中,裝置100可為實體或虛擬裝置。在 圖1中,裝置100包括作業系統112、系統管理控制器104、感測器106、儲存控制器108及儲存器110。在一項實施例中,作業系統112為用於管理裝置硬體資源及對其他執行之電腦程式(諸如應用程式)提供通用服務之一組軟體。在一項實施例中,系統管理控制器104為控制裝置功率流及風扇速度之子系統。在此實施例中,系統管理控制器104耦接至作業系統112及感測器106。在一項實施例中,感測器106耦接至系統管理控制器104,且包括監視並記錄關於裝置100之熱分佈之資料的感測器。在此實施例中,熱分佈為關於裝置100之熱特性之資料。舉例而言,且在一項實施例中,熱分佈可包括隨時間推移之裝置100溫度、隨時間推移之裝置100模組溫度(例如,儲存器溫度、CPU晶粒溫度、裝置外殼之底座溫度、風扇速度及/或與裝置100之熱特性有關之其他資料)。在一項實施例中,感測器106為量測裝置100之熱特性之一或多個感測器。舉例而言,且在一項實施例中,感測器106可包括用於裝置溫度之感測器,用於儲存器112及儲存控制器110之感測器,及/或風扇速度感測器。
在一項實施例中,作業系統112包括熱精靈協助程式熱精靈協助程式(thermald)102。在此實施例中,熱精靈協助程式102為選擇性地節流裝置100之輸入/輸出(I/O)操作以便減輕裝置100之熱環境之精靈協助程式。在一項實施例中,熱精靈協助程式102接收熱分佈之熱資料並判定熱資料是否已跨越熱臨限值中之一者。在一項實施例中,裝置100可經組態用於某些不同之熱臨限值,其中每一熱臨限值具有不同之I/O節流層級。在此實施例中,跨越熱臨限值可意謂熱精靈協助程式102調整用於選擇性地節流裝置100之I/O操作之一組優先級頻寬範圍。在此實施例中,由儲存控制器108使用優先級頻寬範圍以根據操作之優先級來排程I/O操作中之每一者。每一I/O操作具有指示該I/O操作之相對重要性之相關聯優先級。具有較高優先級之I/O操作比具有較低優先級之 I/O操作更有可能經排程及經處理。在一項實施例中,可存在複數個不同之優先級(例如,兩個或兩個以上不同之優先級)。在一項實施例中,在裝置100之低熱負載的條件下,優先級中之每一者具有預設優先級頻寬。當裝置100上之熱負載增加時,熱精靈協助程式102調整不同優先級頻寬範圍中之一或多者之優先級頻寬。在一項實施例中,裝置上之熱負載可增加,此係由於裝置或裝置(例如,儲存控制器108及儲存裝置100)中之一或多個組件之功率消耗增加。
在一項實施例中,熱精靈協助程式102在減小較高優先級頻寬範圍之前選擇性地減小較低優先級之優先級頻寬範圍,使得較低優先級I/O操作在較高優先級I/O操作之前受到節流。藉由選擇性地節流較低優先級I/O操作,較高優先級I/O操作未受到節流,但整體I/O輸送量減小,從而降低用於裝置100之儲存系統之功率消耗,減小由裝置產生之熱,且減小裝置100上之熱負載。若裝置100上之熱負載持續增加,則熱精靈協助程式102可或者進一步節流較低優先級頻寬範圍或者開始節流較高優先級頻寬範圍。在一項實施例中,熱精靈協助程式102節流較低及較高優先級頻寬範圍兩者。在另一實施例中,當裝置100之熱負載減小時,熱精靈協助程式102藉由放寬放置於不同優先級頻寬範圍之約束減小或移除較低及/或較高等級之節流。在此實施例中,若裝置100之熱負載變低,熱精靈協助程式102將優先級頻寬範圍復原至正常。管理優先級頻寬範圍在以下圖4中進一步描述。
在一項實施例中,裝置100包括儲存控制器108及儲存器110。在一項實施例中,儲存控制器108為用於控制儲存器110之一組硬體及相關聯之電路或軟體。在此實施例中,儲存控制器108耦接至作業系統112。在一項實施例中,儲存控制器108自熱精靈協助程式102接收優先級頻寬範圍。儲存控制器108使用優先級頻寬範圍以排程及處理I/O操作114。在一項實施例中,儲存器112為用於儲存用於裝置之資料之 媒體。儲存器可為硬碟機(HDD)、固態磁碟機(SSD)、閃光或其他類型之儲存器。在一項實施例中,I/O操作114為由用於儲存或待儲存於儲存器112上之資料之裝置執行之一類型I/O操作(例如,寫入、讀取、查詢、刪除、建立及/或另一類型之儲存操作)。
圖2A至圖2C為用於不同等級之I/O節流之熱頻帶之說明。圖2A為其中無I/O節流之熱頻帶200A之說明。在圖2A中,熱頻帶202A至202D為隨時間推移之總的可用I/O頻寬之量測值。另外,熱頻帶202A至202D說明可用頻寬如何在不同層中隨時間推移而分散。在一項實施例中,在無熱管理節流情況下,層彼此平等競爭。當熱壓力增加時,用於低層之可用頻寬減小。在一項實施例中,熱頻帶202A至202D大致佔據相同的面積。換言之,在說明中,熱頻帶202A、202B、202C及202D隨時間推移大致佔據相似面積。在一項實施例中,熱頻帶202A至202D分別與優先級0至3對應,其中優先級0為最高優先級,且優先級3為最低優先級。在一項實施例中,圖2A表示在低熱負載下用於裝置之熱頻帶。儘管圖2A說明對應於四種不同優先級之熱頻帶,但在其他實施例中,可存在或多或少之優先級或熱頻帶。
在一項實施例中,當裝置之熱負載增加時,熱頻帶經調整使得較高優先級熱頻帶佔據較多面積。圖2B說明熱頻帶200B,其中存在用於較低優先級處理程序之一些I/O節流。在圖2B中,熱頻帶222A與熱頻帶222D相比佔據較大的體積。如上述圖2A中,熱頻帶222A至222D對應於優先級0至3。在一項實施例中,向下調整較低優先級熱頻帶222D。舉例而言,且在一項實施例中,熱頻帶222D較小,且熱頻帶222A至222C比熱頻帶222D佔據較大面積。在此實施例中,此等熱頻帶200B對應於較低優先級處理程序,該等較低優先級處理程序具有的I/O節流大於較高優先級處理程序之I/O節流。當熱負載進一步增加時,可進一步節流較低優先級處理程序,且亦可節流中等優先級 處理程序。圖2C說明熱頻帶200C,其中存在用於較低優先級處理程序之較大量之I/O節流。在一項實施例中,熱頻帶242B至242D減小,而熱頻帶242A增加。此對應於其中較高優先級處理程序未受到節流且對應於熱頻帶242B至242D之較低優先級處理程序受到節流之實施例。
圖3為用於不同等級之I/O節流之優先級頻寬範圍的表格300之說明。在圖3中,表格300包括優先級之行302及用於不同節流條件之不同優先級頻寬範圍之行304A至304C。在一項實施例中,優先級0為最高優先級,且優先級N為最低優先級。三種不同I/O節流條件在圖3中說明。在一項實施例中,針對無I/O節流條件304A,優先級頻寬範圍中之每一者係自0至100%。此條件表示具有很少或無熱負載之裝置。 在此實施例中,處理程序中之每一者將使其I/O經正常排程及處理,且無I/O節流。當裝置之熱負載增加時,裝置開始節流較低優先級處理程序。在一項實施例中,此由行304B說明,其中存在用於較低優先級處理程序之一些I/O節流。舉例而言,在一項實施例中,優先級0及1具有0至100%之優先級頻寬範圍。優先級2具有0至80%之優先級頻寬範圍,且優先級N具有0至50%之優先級頻寬範圍。此說明經潛在地節流20%至50%之較低優先級處理程序。當熱負載進一步增加時,優先級中之每一者將使其I/O受到節流。舉例而言,在一項實施例中,在行304C中,優先級0具有0至90%之優先級頻寬範圍,優先級1具有0至80%之優先級頻寬範圍,優先級2具有0至50%之優先級頻寬範圍,且優先級N具有0至25%之優先級頻寬範圍。
圖4為基於裝置之熱資料管理I/O節流之處理程序400的一項實施例之流程圖。在一項實施例中,處理程序400由熱精靈協助程式(諸如如圖1中所上述之熱精靈協助程式102)執行以管理I/O節流。在圖4中,處理程序400藉由在區塊402處接受熱資料開始。在一項實施例 中,熱資料係與熱分佈或裝置之其他熱特性有關之資料。舉例而言,在一項實施例中,熱資料可為關於裝置溫度、裝置特定模組溫度之時間相依熱資料,關於風扇使用之資料,及/或與裝置之熱特性有關之其他資料。在區塊404處,處理程序400判定熱資料是否大於較高臨限值。在一項實施例中,較高臨限值為指示裝置可具有較大I/O節流之臨限值,以便減輕裝置上之熱負載。舉例而言,且在一項實施例中,熱臨限值可與裝置之溫度、裝置之模組、風扇速度或一些其他熱特性有關。如另一實例及實施例,若裝置溫度超過40℃、45℃、50℃等,則可使用一組較高熱臨限值。在另一實施例中,熱臨限值可基於日期時間或使用者活動。舉例而言,且在一項實施例中,若處理程序400知道使用者在不久的將來(例如,比如說從午餐回來)極有可能使用機器,則處理程序400可能選擇節流低I/O層以留下任務使用者有可能執行之「熱餘裕空間」。此實施例針對不具有風扇以積極地耗散熱之裝置可係有用的。若熱資料大於較高臨限值,處理程序400在區塊408處調整熱頻帶以增加I/O節流。在一項實施例中,處理程序400藉由節流不同I/O優先級中之一或多者調整熱頻帶。在此實施例中,處理程序400可開始節流優先級或進一步節流已經節流之優先等級。在一項實施例中,處理程序400藉由限制用於該優先級之I/O操作之優先級頻寬範圍來節流優先級。舉例而言,在一項實施例中,處理程序400可藉由將0至100%優先級頻寬範圍限制至如上述圖3中所述之0至80%節流優先級。或者,處理程序400可節流自0至50%向下限制至0至25%之優先級。藉由節流用於不同優先級之優先級頻寬範圍,處理程序400選擇性地節流不同的優先級,從而允許用於較高優先級之較大頻寬範圍及用於較低優先級之較低頻寬範圍。此允許用於裝置之儲存子系統之較少之功率消耗,同時在損害用於較低優先級處理程序之I/O輸送量的情況下具有用於較高優先級處理程序之較好的I/O輸送量。儲存系 統之較低功率消耗可有助於減輕裝置上之熱負載。
若熱資料不大於較高臨限值,則處理程序400在區塊406處判定熱資料是否小於之較低臨限值。在一項實施例中,若熱資料小於較低臨限值,則處理程序400可能想要放寬I/O節流,此係由於裝置上之熱負載可能將減輕。舉例而言,且在一項實施例中,若當前節流用於溫度在40℃至45℃之裝置且溫度下降至40℃(裝置之低熱負載)以下,則處理程序400可放寬當前I/O節流。若熱資料小於較低臨限值,則在區塊410處,處理程序400可調整熱頻帶以減小I/O節流。在一項實施例中,處理程序400放寬放置於不同優先級中之一或多者之I/O輸送量之約束。舉例而言,且在一項實施例中,處理程序400可將具有0至80%優先級頻寬範圍之優先級放寬回至如上述圖3中所述之非限制之0至100%頻寬範圍。或者,處理程序400可將在0至25%之限制優先級放寬至較少限制之0至50%頻寬範圍。若熱資料不小於較低臨限值,則處理程序400在區塊412處維持之當前I/O節流。執行繼續至上述區塊412。
如上所述,回應於裝置之熱資料,裝置可選擇性地限制及放寬不同的優先級頻寬範圍。裝置使用不同的優先級頻寬範圍以處理裝置I/O操作。圖5為處理I/O操作之處理程序之一項實施例之流程圖。在一項實施例中,處理程序500由儲存控制器(諸如如上述圖1中所述之儲存控制器108)執行以使用優先級頻寬範圍來處理I/O操作。在圖5中,處理程序500在區塊502處藉由基於用於該優先級之熱頻帶分配每一時段及每一優先級之貯體開始。在一項實施例中,優先級貯體用於強加用於該優先級之優先級頻寬範圍。在此實施例中,每一貯體將具有一定數量之符記,該一定數量之符記用於分配可經處理用於該優先級及該時段之I/O操作之數目。具有限制頻帶範圍之優先級將比具有未限制頻帶範圍之優先級具有較少的符記。舉例而言,在一項實施例 中,具有0至100%頻帶範圍之優先級在其貯體中具有的符記係具有0至50%頻寬範圍之優先級的兩倍。若貯體在時段中用完符記,則之後在該時段期間將無更多的用於優先級之I/O操作經處理。在一項實施例中,處理程序500確保存在最低之頻寬可用優先級,使得低優先級不缺乏I/O頻寬。在區塊504處,處理程序500選擇具有最高優先級(在貯體中具有符記)之I/O操作。處理程序500在區塊506處處理該I/O操作,且在區塊508處遞減用於該優先級之對應之貯體。在區塊510處,處理程序500判定是否存在新時段。若存在新時段,則執行繼續至上述區塊502。若不存在新時段,則執行繼續至上述區塊504。
圖6為熱精靈協助程式(基於裝置之熱資料管理I/O節流之熱精靈協助程式102)之一項實施例之方塊圖。在一項實施例中,熱精靈協助程式102包括判定是否選擇性地將I/O節流施加至或放寬至優先級之I/O節流模組600。在一項實施例中,I/O節流模組600包括接收熱資料模組602、比較較高熱臨限值模組604、比較較低熱臨限值模組606、增加I/O節流模組608及減小I/O節流模組610。在一項實施例中,接收熱資料模組602接收如上述圖4之區塊406中所述之熱資料。比較較高熱臨限值模組604與如上述圖4之區塊404中所述之較高臨限值比較熱資料。比較較低熱臨限值模組606與如上述圖4之區塊402中所述之較低臨限值比較熱資料。增加I/O節流模組608增加用於如上述圖4之區塊408中所述之一或多個優先級之I/O節流。減小I/O節流模組610減小用於如上述圖4之區塊410中所述之一或多個優先級之I/O節流。
圖7為處理I/O操作之儲存控制器108之一項實施例之方塊圖。在一項實施例中,儲存控制器108包括I/O處理模組700,該I/O處理模組700基於優先級頻寬範圍使用所分配之貯體處理I/O操作。在一項實施例中,I/O處理模組700包括分配貯體模組702、選擇I/O模組704、處理I/O模組706及遞減貯體模組708。在一項實施例中,分配貯體模組 702為如上述圖5之區塊502中之每一優先級分配貯體。選擇I/O模組704自如上述圖5之區塊504中之最高優先級貯體選擇I/O操作。處理I/O模組706處理如上述圖5之區塊506中之經選擇之I/O操作。遞減貯體模組708遞減如上述圖5之區塊502中所述之對應貯體。
圖8展示資料處理系統800之一個實例,該資料處理系統800可用於本發明之一項實施例。舉例而言,可實施包括如圖1中所示之裝置100之系統800。應注意,儘管圖8說明電腦系統之多種組件,但並不意欲表示任何特定結構或互聯組件之方式,此係由於該等細節與本發明無密切關係。亦應瞭解,網路電腦及其他資料處理系統或其他消費型電子裝置(該等消費型電子裝置具有較少組件或可能具有較多組件)亦可用於本發明。
如圖8中所示,電腦系統(係一種形式之資料處理系統)包括耦接至微處理器805之匯流排803及ROM(唯讀記憶體)807及揮發性RAM 809及非揮發性記憶體811。微處理器805可自記憶體807、809、811擷取指令,且執行指令以執行上述操作。匯流排803將此等多種組件互聯在一起,且亦將此等組件805、807、809及811互聯至顯示控制器及顯示裝置813及周邊裝置,諸如輸入/輸出(I/O)裝置,該等輸入/輸出(I/O)裝置可為滑鼠、鍵盤、數據機、網路介面、印表機及此項技術中熟知之其他裝置。通常,輸入/輸出裝置815經由輸入/輸出控制器813耦接至系統。揮發性RAM(隨機存取記憶體)809通常實施為動態RAM(DRAM),該動態RAM持續需要電源以便再新或維持記憶體中之資料。
大容量儲存器811通常為磁性硬碟機或磁性光碟機或或光碟機或DVD ROM或快閃記憶體或其他類型之記憶體系統,該等其他類型之記憶體系統維持資料(例如,大量資料)即使在電源自系統移除之後亦如此。通常,大容量儲存器811將亦為隨機存取記憶體,儘管此不必 需。儘管圖8展示大容量儲存器811為直接耦接至資料處理系統中之其餘組件之區域裝置,但應瞭解,本發明可利用遠離系統之非揮發性記憶體,諸如經由網路介面(數據機、乙太網路介面或無線網路)耦接至資料處理系統之網路儲存裝置。匯流排803可包括經由如此項技術中熟知之多種橋、控制器及/或配接器彼此連接之一或多個匯流排。
圖9展示可用於本發明之一項實施例之另一資料處理系統900之實例。舉例而言,系統900可實施為如圖1中所示之裝置100。圖9中所示之資料處理系統900包括處理系統911,該處理系統911可為一或多個微處理器,或可為系統單晶片積體電路,且該系統亦包括用於儲存由處理系統執行之資料及程式之記憶體901。系統900亦包括音訊輸入/輸出子系統905,該音訊輸入/輸出子系統905可包括用於(例如)經由揚聲器及麥克風播放音樂或提供電話功能性之麥克風及揚聲器。
顯示控制器及顯示裝置909向使用者提供視覺使用者介面;此數位介面可包括圖形使用者介面,該圖形使用者介面類似於展示於麥金塔(Macintosh)電腦(當執行OS X作業系統軟體時)或Apple iPhone(當執行iOS作業系統)等中之介面。系統900亦包括與另一資料處理系統(諸如圖9之系統900)進行通信之一或多個無線收發器903。無線收發器可為WLAN收發器、紅外收發器、藍芽收發器及/或無線蜂巢式電話收發器。應瞭解,未展示之額外組件在某些實施例中亦可為系統900之部分,且在某些實施例中少於圖9中所示組件之組件亦可用於資料處理系統中。系統900進一步包括與另一資料處理系統(諸如圖8之系統800)進行通信之一或多個通信埠917。通信埠可為USB埠、藍芽介面等。
資料處理系統900亦包括一或多個輸入裝置913,該一或多個輸入裝置913經提供以允許使用者將輸入提供至系統。此等輸入裝置可為小鍵盤或鍵盤或觸控面板或多點觸控面板。資料處理系統900亦包 括可為用於銜接之連接器之選用之輸入/輸出裝置915。應瞭解,未展示之一或多個匯流排可用於使如此項技術中熟知之多種組件互聯。如圖9中所示之資料處理系統可為手持型電腦或個人數位助理(PDA),或具有PDA式功能性之蜂巢式電話,或包括蜂巢式電話之手持型電腦,或媒體播放器(諸如iPod),或組合此等裝置之態樣或功能之裝置,諸如與PDA及蜂巢式電話組合於一個裝置或嵌入式裝置或其他消費型電子裝置中之媒體播放器。在其他實施例中,資料處理系統900可為網路電腦或另一裝置內之嵌入式處理裝置,或其他類型之資料處理系統(具有比圖9中所示者少之組件或可能多之組件)。
本發明之至少某些實施例可為數位媒體播放器之部分,諸如攜帶型音樂及/或視訊媒體播放器,該攜帶型音樂及/或視訊媒體播放器可包括呈現媒體之媒體處理系統,儲存媒體之儲存裝置,且可進一步包括與天線系統及媒體處理系統耦接之射頻(RF)收發器(例如,用於蜂巢式電話之RF收發器)。在某些實施例中,儲存於遠端儲存裝置之媒體可經由RF收發器傳送至媒體播放器。媒體可為(例如)音樂或其他視訊之一或多者、靜止圖片或動畫。
攜帶型媒體播放器可包括媒體選擇裝置,諸如自加州庫比蒂諾蘋果公司之iPod®或iPod Nano®媒體播放器上之點選輪輸入裝置、觸控式螢幕輸入裝置、按鈕裝置、可移動指標輸入裝置或其他輸入裝置。媒體選擇裝置可用於選擇儲存於儲存裝置及/或遠端儲存裝置之媒體。至少在某些實施例中,攜帶型媒體播放器可包括顯示裝置,該顯示裝置耦接至媒體處理系統以顯示媒體(經由輸入裝置選擇,且或者經由揚聲器或耳機,或在顯示裝置上,或在顯示裝置及揚聲器或耳機兩者上呈現)之標題或其他指示符。攜帶型媒體播放器之實例描述於出版之美國專利第7,345,671及美國出版專利第2004/0224638號中,該等美國專利之兩者以引用之方式併入本文中。
上述中之部分可用邏輯電路(諸如專用邏輯電路)或用微控制器或執行程式碼指令之其他形式之處理核心實施。因此由上述教示之處理程序可用程式碼(諸如使得執行此等指令之機器執行某些功能之機器可執行指令)執行。在此背景中,「機器」可為將中間形式(或「抽象」)指令轉換至處理器特定指令(例如,諸如「虛擬機器」(例如Java虛擬機器)之抽象執行環境、解譯器、共用語言執行環境、高階語言虛擬機器等)之機器,及/或經設計以執行諸如通用處理器及/或特用處理器之指令之安置於半導體晶片(例如,用轉換器實施之「邏輯電路」)之電子電路。由上述教示之處理程序亦可由(替代機器或與機器組合)經設計以執行處理程序(或其部分)而無需執行程式碼之電子電路執行。
本發明亦係關於用於執行本文中所述之操作之設備。為了所需之目的,此設備可經特定建構,或其可包含由儲存於電腦中之電腦程式選擇性地啟動或重組態之通用電腦。該電腦程式可儲存於電腦可讀儲存媒體,諸如(但不限於)包括軟碟、光碟、CD-ROM及磁光碟、唯讀記憶體(ROM)、RAM、EPROM、EEPROM、磁或光卡之任何類型之磁碟,或適於儲存電子指令之任何類型之媒體,且各自耦接至電腦系統匯流排。
機器可讀媒體包括用於由機器(例如,電腦)以可讀形式儲存或傳送資訊之任何機制。舉例而言,機器可讀媒體包括唯讀記憶體(「ROM」)、隨機存取記憶體(RAM)、磁碟儲存媒體、光儲存媒體、快閃記憶體裝置等。
製品可用於儲存程式碼。儲存程式碼之製品可體現為(但不限於)一或多種記憶體(例如,一或多個快閃記憶體、隨機存取記憶體(靜態、動態或其他))、光碟、CD-ROM、DVD ROM、EPROM、EEPROM、磁或光卡或適於儲存電子指令之其他類型之機器可讀媒 體。程式碼亦可以體現於傳播媒體(例如,經由通信鏈路(例如,網路連接))之資料信號方式自遠端電腦(例如,伺服器)下載至請求電腦(例如,用戶端)。
以上詳細描述按照演算法及電腦記憶體內之資料位元上之操作的符號表示法呈現。此等演算描述及表示係由熟悉此項資料處理技術者使用以向其他熟悉此項技術者最有效地傳達其工作內容之工具。演算法在此(且通常)設想為導致理想結果之操作之自相一致序列。操作為需要物理量之實體調處之彼等者。通常,儘管不必要,但此等量採取能夠儲存、傳送、組合、比較及以其它方式調處之電或磁信號之形式。原則上針對習慣用語之理由,已證實有時將此等信號稱作位元、值、元件、符號、特徵、術語、數目或其類似者很方便。
但是,應牢記,所有此等及相似術語係與適當物理量相關聯,且僅為施加至此等量之實用標記。除非確切地陳述是如以上論述般明顯之其他情況,否則應注意,在描述中,利用諸如「監視」、「減小」、「增加」、「處理」、「計算」、「記錄」、「復原」或其類似者之術語之論述指代電腦系統或類似電子計算裝置之行動及處理程序,該類似電子計算裝置將表示為電腦系統暫存器及記憶體內之物理(電子)量之資料調處並轉換至類似地表示為電腦系統記憶體或暫存器或其他該資訊儲存器、傳輸或顯示裝置內之物理量之其他資料。
本文中所呈現之處理程序及顯示從根本上說不與任何特定電腦或其他設備有關。多種通用系統可根據本文中之教示用於程式,或可被證實建構更加特定之設備以執行所述操作很方便。用於多種此等系統之需求結構將自以下描述明顯。另外,本發明未參考任何特定編程語言來描述。應瞭解,多種編程語言可用於實施如本文中所述之發明教示。
前述論述僅描述本發明之一些例示性實施例。熟悉此項技術者 將從該論述、附圖及專利申請範圍不難認識到可製成多種修改而不偏離本發明之精神及範疇。
100‧‧‧裝置
102‧‧‧熱精靈協助程式
104‧‧‧系統管理控制器
106‧‧‧感測器
108‧‧‧儲存控制器
110‧‧‧儲存器
112‧‧‧作業系統
114‧‧‧輸入/輸出操作

Claims (17)

  1. 一種非暫時性機器可讀媒體,其具有可執行之指令以使得一或多個處理單元執行一方法以管理一裝置之一熱分佈,該方法包含:監視該裝置之該熱分佈,其中該裝置正執行利用該裝置之儲存器之複數個輸入/輸出操作,該複數個輸入/輸出操作包括一第一優先級輸入/輸出操作及一第二優先級輸入/輸出操作;判定該裝置之該熱分佈超過一第一熱臨限值,將用於該第一輸入/輸出操作之一第一頻寬範圍減小至少於1OO%,及將用於該輸入/輸出操作之一第二頻寬範圍減小至少於100%,且該第二頻寬範圍大於該第一頻寬範圍;使用該第一頻寬範圍來處理該第一優先級輸入/輸出操作之一儲存請求;及使用該第二頻寬範圍來處理該第二優先級輸入/輸出操作之一儲存請求。
  2. 如請求項1之非暫時性機器可讀媒體,其中一頻寬範圍設定被使得可用於一輸入/輸出操作之可用儲存頻寬之一量。
  3. 如請求項1之非暫時性機器可讀媒體,判定該裝置之該熱分佈超過一第二熱臨限值,則進一步減小該第一及第二頻寬範圍,其中該第二頻寬範圍大於該第一頻寬範圍。
  4. 如請求項1之非暫時性機器可讀媒體,若該熱分佈降至低於該第二熱臨限值,則 將該第一頻寬範圍及該第二頻寬範圍復原至先前值。
  5. 如請求項1之非暫時性機器可讀媒體,其中該熱分佈係選自由裝置溫度及可聽風扇噪音組成之群組。
  6. 如請求項1之非暫時性機器可讀媒體,其中該高優先級輸入/輸出操作與一視覺處理相關聯,且該低優先級輸入/輸出操作與一批次處理相關聯。
  7. 如請求項1之非暫時性機器可讀媒體,其中對該熱分佈之該監視包含:記錄該裝置溫度。
  8. 如請求項1之非暫時性機器可讀媒體,其進一步包括:維持一第三頻寬範圍;使用該第三頻寬範圍來處理一第三優先級輸入/輸出操作之一儲存請求。
  9. 如請求項1之非暫時性機器可讀媒體,其中該第一頻寬範圍係分配一第一組符記(token),且該第二頻寬範圍係分配一第二組符記。
  10. 如請求項9之非暫時性機器可讀媒體,其進一步包括:若該第一及第二頻寬範圍之其中一者具有一可用符記,且該可用符記係來自對應於該第一及第二頻寬範圍之該其中一者之一組符記,則處理對應於該第一及第二頻寬範圍之該其中一者之一輸入/輸出操作;及遞減來自該對應之頻寬範圍之一符記。
  11. 一種管理一裝置之一熱分佈之方法,該方法包含:監視該裝置之該熱分佈,其中該裝置正執行利用該裝置之儲存器之複數個輸入/輸出操作,該複數個輸入/輸出操作包括一第一優先級輸入/輸出操作及一第二優先級輸入/輸出操作; 判定該裝置之該熱分佈超過一第一熱臨限值,將用於該第一輸入/輸出操作之一第一頻寬範圍減小至少於100%,及將用於該第二輸入/輸出操作之一第二頻寬範圍減小至少於100%,且該第二頻寬範圍大於該第一頻寬範圍;使用該第一頻寬範圍來處理該第一優先級輸入/輸出操作之一儲存請求;及使用該第二頻寬範圍來處理該第二優先級輸入/輸出操作之一儲存請求。
  12. 如請求項11之方法,其中一頻寬範圍設定被使得可用於一輸入/輸出操作之可用儲存頻寬之一量。
  13. 如請求項11之方法,判定該裝置之熱分佈超過一第二熱臨限值,則進一步減小該第一及第二頻寬範圍,其中該第二頻寬範圍大於該第一頻寬範圍。
  14. 如請求項13之方法,若該熱分佈降至低於該第二熱臨限值,則將該第一頻寬範圍及該第二頻寬範圍復原至先前值。
  15. 如請求項11之方法,其中該熱分佈係選自由裝置溫度及可聽風扇噪音組成之群組。
  16. 一種管理一裝置之一熱分佈的裝置,該裝置包含:一處理器;一記憶體,其經由一匯流排耦接至該處理器;及一處理程序,其由該處理器自該記憶體執行,使得該處理器監視該裝置之該熱分佈,其中該裝置正執行利用該裝置之儲存器之複數個輸入/輸出操作,該複數個輸入/輸出操作包括一第一優先級輸入/輸出操作及一第二優先級輸入/輸出操作,判定該裝 置之該熱分佈超過一第一熱臨限值,該處理器將用於該第一輸入/輸出操作之一第一頻寬範圍減小至少於100%,且將用於該第二輸入/輸出操作之一第二頻寬範圍減小至少於100%,且該第二頻寬範圍大於該第一頻寬範圍,該處理器進一步使用該第一頻寬範圍來處理該第一優先級輸入/輸出操作之一儲存請求,且使用該第二頻寬範圍來處理該第二優先級輸入/輸出操作之一儲存請求。
  17. 如請求項16之裝置,其中一頻寬範圍設定被使得可用於一輸入/輸出操作之可用儲存頻寬之一量。
TW104117025A 2014-05-30 2015-05-27 用以管理裝置之熱分佈之方法及裝置以及相關的非暫時性機器可讀媒體 TWI551985B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462006006P 2014-05-30 2014-05-30
US14/503,312 US9436628B2 (en) 2014-05-30 2014-09-30 Thermal mitigation using selective I/O throttling

Publications (2)

Publication Number Publication Date
TW201606501A TW201606501A (zh) 2016-02-16
TWI551985B true TWI551985B (zh) 2016-10-01

Family

ID=53398185

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104117025A TWI551985B (zh) 2014-05-30 2015-05-27 用以管理裝置之熱分佈之方法及裝置以及相關的非暫時性機器可讀媒體

Country Status (3)

Country Link
US (1) US9436628B2 (zh)
TW (1) TWI551985B (zh)
WO (1) WO2015183585A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10203746B2 (en) 2014-05-30 2019-02-12 Apple Inc. Thermal mitigation using selective task modulation
US10095286B2 (en) * 2014-05-30 2018-10-09 Apple Inc. Thermally adaptive quality-of-service
US10592122B2 (en) * 2015-03-31 2020-03-17 Sandisk Technologies Llc Inherent adaptive trimming
US10215800B2 (en) * 2015-04-24 2019-02-26 Qualcomm Incorporated Device specific thermal mitigation
US9760402B2 (en) * 2015-07-23 2017-09-12 Dell Products L.P. Systems and methods for input/output traffic shaping for optimal performance under thermal constraints
US10185511B2 (en) * 2015-12-22 2019-01-22 Intel Corporation Technologies for managing an operational characteristic of a solid state drive
US11543967B2 (en) * 2017-02-23 2023-01-03 Samsung Electronics Co., Ltd. Method for controlling BW SLA in NVME-of ethernet SSD storage systems
US10115471B1 (en) * 2017-05-01 2018-10-30 Western Digital Technologies, Inc. Storage system and method for handling overheating of the storage system
US11099628B2 (en) * 2018-09-27 2021-08-24 Intel Corporation Throttling of components using priority ordering
KR20210016203A (ko) 2019-08-02 2021-02-15 삼성전자주식회사 스토리지 장치의 동작 방법, 및 호스트 장치 및 스토리지 장치를 포함하는 스토리지 시스템의 동작 방법
US11656664B2 (en) * 2020-06-05 2023-05-23 Apple Inc. Context aware thermal pressure prediction and reaction

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060242447A1 (en) * 2005-03-23 2006-10-26 Sivakumar Radhakrishnan On-die temperature monitoring in semiconductor devices to limit activity overload
US20120066439A1 (en) * 2010-09-09 2012-03-15 Fusion-Io, Inc. Apparatus, system, and method for managing lifetime of a storage device
US20120331207A1 (en) * 2011-06-24 2012-12-27 Lassa Paul A Controller, Storage Device, and Method for Power Throttling Memory Operations

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7345671B2 (en) 2001-10-22 2008-03-18 Apple Inc. Method and apparatus for use of rotational user inputs
US20030191889A1 (en) 2002-04-04 2003-10-09 International Business Machines Corporation Method and apparatus for managing operation of a storage device based on operating temperatures in the storage device
US7627343B2 (en) 2003-04-25 2009-12-01 Apple Inc. Media player system
US8224639B2 (en) 2004-03-29 2012-07-17 Sony Computer Entertainment Inc. Methods and apparatus for achieving thermal management using processing task scheduling
US7793291B2 (en) 2004-12-22 2010-09-07 International Business Machines Corporation Thermal management of a multi-processor computer system
US8374730B2 (en) 2005-08-25 2013-02-12 Apple Inc. Methods and apparatuses for dynamic thermal control
EP1934871A4 (en) 2005-10-11 2012-11-07 Exar Corp PREDICTIVE THERMAL MANAGEMENT BY MODEL
US9442816B2 (en) 2011-11-30 2016-09-13 International Business Machines Corporation Implementing memory performance management and enhanced memory reliability accounting for thermal conditions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060242447A1 (en) * 2005-03-23 2006-10-26 Sivakumar Radhakrishnan On-die temperature monitoring in semiconductor devices to limit activity overload
US20120066439A1 (en) * 2010-09-09 2012-03-15 Fusion-Io, Inc. Apparatus, system, and method for managing lifetime of a storage device
US20120331207A1 (en) * 2011-06-24 2012-12-27 Lassa Paul A Controller, Storage Device, and Method for Power Throttling Memory Operations

Also Published As

Publication number Publication date
US20150347330A1 (en) 2015-12-03
WO2015183585A1 (en) 2015-12-03
US9436628B2 (en) 2016-09-06
TW201606501A (zh) 2016-02-16

Similar Documents

Publication Publication Date Title
TWI551985B (zh) 用以管理裝置之熱分佈之方法及裝置以及相關的非暫時性機器可讀媒體
TWI547811B (zh) 選擇性圖形處理單元(gpu)節流
JP6328568B2 (ja) 熱アウェアデバイスブーティングのためのシステムおよび方法
TWI592802B (zh) 熱調適服務品質等級
US11487661B2 (en) Converged memory device and operation method thereof
US9984038B2 (en) Method, apparatus, and system for optimizing frequency and performance in a multidie microprocessor
JP6005895B1 (ja) ワット当たりの最適パフォーマンスのためのインテリジェントマルチコア制御
JP5883967B2 (ja) ポータブルコンピューティングデバイスの熱ポリシーを管理するための方法およびシステム
CN108780349B (zh) 用于在具有异构集群架构的片上系统中进行智能热管理的系统和方法
CN105308571B (zh) 基于活动处理器的动态电压和频率管理
JP6162262B2 (ja) 最適な電力レベルを予測するために熱抵抗値を使用したポータブルコンピューティングデバイスにおける熱管理のためのシステムおよび方法
TWI525433B (zh) 具有動態運行時間記憶體對映選擇之適應性位址對映技術
TWI553551B (zh) 使用選擇性任務調變之熱減輕
EP2975528A1 (en) Electronic device and method for managing memory of electronic device
US7281148B2 (en) Power managed busses and arbitration
TW201512836A (zh) 節流應用程式對資源之存取
JP2015127955A (ja) メモリアレイのための動的熱予算割当
WO2016160164A1 (en) Improving storage cache performance by using compressibility of the data as a criteria for cache insertion
TW201209573A (en) Managing memory refreshes
US20200089300A1 (en) Load line regulation via clamping voltage
US20220350655A1 (en) Controller and memory system having the same
US20140189385A1 (en) Intelligent receive buffer management to optimize idle state residency
US9367442B2 (en) Allocating memory usage based on voltage regulator efficiency
US11157067B2 (en) Power shifting among hardware components in heterogeneous system
US9817759B2 (en) Multi-core CPU system for adjusting L2 cache character, method thereof, and devices having the same