TWI345155B - - Google Patents
Download PDFInfo
- Publication number
- TWI345155B TWI345155B TW094109855A TW94109855A TWI345155B TW I345155 B TWI345155 B TW I345155B TW 094109855 A TW094109855 A TW 094109855A TW 94109855 A TW94109855 A TW 94109855A TW I345155 B TWI345155 B TW I345155B
- Authority
- TW
- Taiwan
- Prior art keywords
- component
- thermal
- operations
- temperature
- memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/20—Cooling means
- G06F1/206—Cooling means comprising thermal management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/329—Power saving characterised by the action undertaken by task scheduling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1218—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
- G06F3/1221—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to power consumption
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4405—Initialisation of multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/483—Multiproc
-
- 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)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Power Sources (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- General Factory Administration (AREA)
- Cooling Or The Like Of Semiconductors Or Solid State Devices (AREA)
- Investigating Or Analyzing Materials Using Thermal Means (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
1345155 九、發明說明: 【發明所屬之技術領域】 , 本發明有關在處理環境中執行熱管理的方法及裝置,尤
^ 其冑111由有效分配指♦及工作以》咸少熱點的方法及F 置。 、 【先前技術】 計算系統變得越來越複雜,在達成較高處理速度的同時 也縮減組件大小,將器件密集地集中在電腦晶片上。此種 ··進展對於許多應用程式的成功至關重要,如即時、多媒體 • 韻及其料算密集式應隸式。通常m统併入多 個平行運算(或至少共同運算)的處理器,以增加處理效率。 在組件及器件執行如指令及工作等運算時,通常會產生 熱。過熱對於如電腦晶片之電子組件的處理能力有不利的 - 影響。例如,如果晶片的一個區域正在執行計算密集式工 作,則s亥區域將相對於其餘晶片從熱點明顯變熱。如果熱 籲‘點超過熱臨界,則將使在晶片該區域中之組件或器件的效 能降級,或甚至使晶片受損或毀壞。 過去,已採用各種解決方案來解決過熱的問題。機械的 解決方案是在電腦晶片上加裝散熱片。然而,散熱片體積 龐大且只能將熱從晶片驅散至圍繞晶片的空間中。在將晶 片存放在如個人電腦機殼的外殼中時,必須如利用風扇來 移除此熱,但風扇本身既佔用空間又產生惱人的噪音。 還有其他更複雜的熱管理方案。例如,在一項解決方案 中’將m·度感測器放在關鍵的電路元件(如處理器)上,然後 100746.doc Χ^155 將:扇安裝在關聯的系統外殼中。當溫度感測器指示達到 ; :寺定溫度時,風扇隨即開啟,以增加空氣流動通過系統外 =’使處理器冷卻。或者’可以發出警報,使處理環境在 * 〉显度感測器指示超過預定溫度等級時開始關機。通常將感 • ㈣器放在離熱點的-段距離處。不幸的是,此反饋方式的 運作可能過於緩慢或極不可靠,因而無法有效防止過熱。 其他執行熱管理的嘗試做法則採用軟體來進行。例如, # —項技術可減緩組件的時脈,因而有更多時間在運算之間 力以冷部。一種習用的系統可使用調節機構來控制從指令 快取記憶體至指令緩衝器的指令取得速率。減少取得速率 °降低,、.、的產生。更強烈的做法甚至關閉處理器,以允許 處理器冷卻。不幸的是,所有這些技術直接影響到組件運 算的速度,因而不利即時處理的需求。 【發明内容】 因此’在本技術巾需要既能達成歸理且㈣免附加硬 • 體或無效率之軟體常式的新方法及裝置。 根據本發明的各方面’提供熱排程方法。在-項較佳的 具體實施财,組件具有熱臨界,且該方法包括提供由组 件執行的複數個運算。提供使運算和熱屬性相關聯的熱資 訊。熱屬性代表在運算執行期間有關預期組件所產生或引 起之熱量的值。運算的執行順序將根據熱屬性進行排程, 以免超過熱臨界。 在項範例中,該方法進一步包含以溫度感測構件測量 熱屬性。在另-項範例中,該方法進一步包含根據組件的 i00746.doc 1345155 功率消耗來估計熱屬性。 -個情況中,估計包括執:=方式枯計熱屬性。在 況中,估.… 執仃組件的電路模擬。在另-個情 中估什包括決定組件的功率密度。 在又另一項範例中, 序執行運算。較佳, 乂包各使組件按執行順 性俜為所㈣, 包括複數個處理器件’及熱屬 係為所選執行運算之處理器件的總熱屬性。 器項範例中’該組件包括複數個處理器件,各處理 性,各^ ^ Ί k括複數個個別的熱屬 法較=:Γ 件之一相關聯。在此情況下,該方 件將〜、擇處理15件中至少部分以執行運算。所選器 二:控4且在所選器…遞送運算,以免超過個別 在一項替代的範例中,該組件包括複數個處理 15件’並在該複數個處理器件之中分配熱屬性。 件2 = 一項範例中,決定熱屬性的步驟包括:⑴決定組 巴:=耗;(ii)決定組件的覆蓋區(大小);㈣按覆蓋 K刀功率消耗,以獲得每單位面積的 將此值乘以埶仕呌A奴如口 平通耗,及(lv) 、W熱估#常數。在另—項範例中,該方法進一步 包括決定冷卻屬性,以在排程運算時將冷卻屬性執屬 性一起併入。 .、,、屬 在另項較佳的具體實施例中,一方法先獲得具有一連 _運异的程式碼’然後決定和一或多個運算相關聯的熱屬 f生。此外’還決定組件的熱臨界。根據熱屬性排程運算以 由組件執行,以免超過熱臨界。 在一項範例中,熱屬性說明預期組件執行選定的運算時 100746.doc 1345155 所產生的熱量。在另一項範例中,熱屬性說明—段時間後 產生的熱量。在另一項範例中,熱屬性說明(a)組件之功率 消耗’及(b)組件之功率密度中至少一項。 在又另一項範例中,該方法進一步包含使組件執行運 ^在執行期間監控組件的溫度。如果超過熱臨界,則重 新排程運算。 在另一項範例中,該方法進一步包含藉由計算各運算中 執行的工作數量來估計熱屬性。 在另一項範例中,該組件包括複數個處理器件。在此情 況下,該方法較佳包括以所選處理器件監控選定運算的動 態執仃。決定所選器件的運算頻率。將運算頻率報告給編 、在又另-項範例中’該方法進一步包含決定計算器件的 冷部屬性。計算器件包括組件。排程運算的步驟係根據冷 部屬性及熱屬性來執行。冷卻屬性根據計算器件封裝的類 型。其亦根據計算器件的冷卻構件。在此情況下,如果冷 :構件具有—個狀態,則冷卻屬性係為固I如果冷料 件具有多個狀態,則冷卻屬性為動態。 :據本發明的其他方面’提供用於計算環境中處理運算 理系統及方法。在處理系統的—項具體實施例中,運
=由屬於計算器件之部分的組件來執行。提供至少 。屬性㈣纟且件及較的運算相 在執行運算後的溫度變更。 U曰不組件 在-項範例中’處理系統包括排程器。排程器能夠根據 100746.doc 1345155 熱屬,派運算中至少一項給組件。在一個情況令,可操 作排私益以根據熱屬性從儲存位置摘取選定的運算。在另 二固情況中,該线包括子組件,該排程器係為簡單的排 及熱屬性係為和組件相關聯而非和子組件相關聯的 總熱屬性β方*5? S —* 乂m A 丄 月',該組件包括子組件,該排 係為進階排程器,及熱屬性係進-步和子組件中至少 部分子組件相關聯。 在f一項範例中’該組件係為處理器件及該排程器係和 處理15件整合。在另一項範例中,選定的運算包含工作及 熱屬性係為工作熱屬性。在此情況下,工作熱屬性較佳根 據以下項目’至少一項:⑷組件的運算頻率;(b)組件的熱 屬性;及(c)冷卻屬性。 在又另-項範例中,運算中至少部分運算包括優先權。 在此情況下’該系統進一步包含複數個優先權仲列,其中 各,先權件列包括:第一作列(如’熱符列)’以儲存第一組 運异;及第二仵列(如,冷㈣),以儲存第二組運算。較佳, 該系統進-步包括排程!^可操作該排程器以根據運算的 優先權及根據熱屬性,將運算中至少部分指派給所選優先 權仵列令的熱仵列或冷仵列。較佳,進一步可操作該排程 器以根據選定運算的熱屬性及優先權,從所選優先權仔列 的熱佇列或冷佇列擷取運算中選定的運算。 根據本發明的各方面,在處理系統的另一項具體實施例 中’提供排程器、第—運算與第二運算、及複數個處理器。 該排程器管理包含第一運算與第算的運算。帛一運算 100746.doc -9- U45155 具有超過運算底限的熱屬性。第二運 限的埶屬性。處理器At 八未超過運算底 臨界 5執行該等運算。各處理器具有熱 在項犯射’如果未超過所選處理器的熱臨界 處理器可獲得及執行第一運算與第二運算中至 ^ 另一項範例中,如果未超過所選處理器的熱臨界,=
=得第-運算。在另—項範财,如果超過所選處理号 的…、臨界,則可操作處理器以獲得及執行第二運算。 在又另—項範例中,處理器包括溫度感測構件,以監控 或估計處理器的溫度。較佳’處理器進一步包括類比至: 位轉換$ ’可_作該類比至數位轉換器以從溫度感測構件 接收溫度值並提供數位溫度值。 在另-項範例中’所選處理器包括複數個子處理器。理 想上,所選處理器具有和所選處理器相關聯而不和子處理 器相關聯的總熱屬性。或者,各子處理器理想上具有和其 他子處理器之組件熱屬性有所區別的組件熱屬性。 根據本發明的各方面,提供在計算環境中執行運算的較 佳方法。該方法包括儲存第一運算及儲存第二運算。根據 運算的熱屬性儲存該等運算。該方法進一步包括根據處理 器的熱臨界以擷取該等運算中至少一項。 較佳’如果未超過處理器的熱臨界’則可擷取該等運算 中至少一項。較佳,僅擷取第一運算。如果超過處理器的 熱臨界,則較佳擷取第二運算。 該方法較佳包括以下附加步驟:決定第一運算及第二運 I00746.doc •10· 1345155 算的優先權,及提供複數個優先權佇列◎在此情況下,提 供其中具有第一佇列及第二佇列的優先權佇列。第一運算 係根據第一運算的優先權而儲存於第一仔列之—中,及第 二運算係根據第二運算的優先權而儲存於第二佇列之一 中。 在另一項範例中,該方法進一步包含使組件熱屬性和處 理器相關聯。在此情況下,絲運算包括評估組件熱屬性 的目前狀態,然後根據組件熱屬性選擇運算。 根據本發明的各方面,執行運算的另一較佳方法包括決 定處理器的溫度是否超過熱臨界。如果未超過,則該方法 決定第if算是否可用。第一運算可能維持或增加處理器 執行時m如果第—運算可用,則執行之。如果超過 ”’、界則該方法決定第二運算是否可用。第二運算可能 降低處理器執行時的溫度。如果第二運算可用,則執行之。 在一項範例中 執行"無運算,,或 含決定優先權等 運算是否可用, 優先權佇列的第 ’如果冷佇列運算不可用,則該方法較佳 "nop"。在另一項範例中,該方法進一步包 級,決疋優先權等級之優先權仔列的第一 如果優先權佇列的第一運算不可用,決定 二運算是否可用。 在本發明之進一步方面的另一項具體實施例中,提供一 種處理裝番 ^ ^ ^ 。I處理裝置能夠處理和熱屬性相關聯的運 I二處理褒置包含記憶體及複數個處理器件。記憶體係 限的執2 —運异及第二運算。第—運算具有超過運算底 …、‘生。第二運算具有未超過運算底限的熱屬性。處 100746.doc • 11 - 1345155 ΓΗ::行該等運算。處理器件中至少部分具有熱臨界 士》己It體的存取。至少一所選處理器件 處:早-、或子處理單元。如果未超過所選處理器件㈣ 臨界,則所選處理器件可從記憶體獲得 …、 ^ 3¾异以進行處 理。如果超過所選處理器件的熱臨界,則所選處理 從記憶體獲得第二運算以進行處理。 在一項範例中,處理器件中至少部分為處理元件 處理元件中至少部分進一步包括至少一子處理單元。在此 =下’子處理單元包括:浮點單元、整數單元、及和浮 及整數單元相„的暫存器。較佳’子處理單 一步包括本機存放區。 ⑽在另-項範例中’處理元件中至少部分進—步包含處理 早疋及複數個和處理單元相關聯的子處理單元。在此情況 下,子處理單元較佳各包括本機存放區。 月/ 在另-項範例中’可根據第一處理器件的熱臨界來操作 處理器件的第一處理器件以和處理器件的第二 換運算。 丁乂 ,在另一項範例中,所選處理器件包括子處理單元,及呓 =體包含在子處理單元中的本機存放區。在此情況下,1 存放區包括:第一件列,用於管理第一運算;及第二佇 歹J *用於官理第二運算。可按分時配置將第—運算及第二 運算維持在記憶體中。 在本一發明之方面之另一替代方案中’其中有一對記憶 項範例中’記憶體中的第-記憶體包括第一佇列, 100746.doc -12- 用於管理具有超過運算底限之熱屬性的第一組運算,及記 憶:中的第二記憶體包括第二佇列,用於管理具有未超過 運算底限之熱屬性的第二組運算。如果未超過所選處理器 件的熱臨界’則該處理器件可獲得第一組運算中至少一項 、進行處理。如果超過熱臨界,則處理器件可獲得第二組 運算中至少-項以進行處理。在另__項範例中,其中有一 對用於儲存第一運算及坌_ Μ 异及第一運异的記憶體,第一運算具有 超過運算底㈣熱隸,及第二運算具有未超過運算底限 的熱屬性。如果未超過所選處理器件㈣臨界,則該處理 器件可從第-記憶體或第二記憶體獲得第一運算以進行處 理。如果超過熱臨界,則考 ρ 貝J處理盗件可從第一記憶體或第二 記憶體獲得第二運算以進行處理。 根據本發明的各方面,提供_種處理卫作的方法。該方 法包括根據屬性選擇複數個工作之一以由組件執行。各工 ^的屬性係有關組件在執行關聯之卫作後的溫度。然後再 執行所選工作。 較佳’屬性有關組件執行關聯之工作後之溫度的預期增 加或降低。預期增加或降低係根據組件的功率密度。工作 係儲存在記憶體的至少一佇 ㈣^ , 仵列中。或者,工作係儲存在記 =的 时列中。—個㈣儲存其屬性符合條件的 個㈣料其屬性不符合條件的4°此條件 料疋限°也可以根據組件目前的溫度來選擇 Γ 在執行之前將卫作儲存於記憶體的不同位址中。 也可在執行之前將卫作儲存於記㈣在不_間的㈣位 I00746.doc -13- 中較佳,組件係為處理器β 2據本發明的其他方面,提供一種處理工作的系統,其 己隐體’用於儲存要處理的工作;及組件,用於處 儲存於記憶體中的卫作。工作係、和屬性相關聯。各工作 、登屬係有關組件在處理關聯之工作後的溫度。根據屬性 選擇工作之―,以由組件進行處理。 屬J·生較佳有關組件在處理選定之卫作後之溫度的預期增 或降低預期增加或降低係根據組件的功率密度。卫作 係儲存在5己憶體的至少一佇列中。也可將工作儲存在記憶 的至/兩個>ίτ列中。在此情況下,—個仔列儲存其屬性 符。條件的J1作,及另_個仔列儲存其屬性不符合條件的 工作β此條件可以是屬性超過定限。 δ己憶體較佳包含兩個分開的記憶體集合。-個記憶體集 。儲存其屬性符合條件的卫作,及另—個記憶體集合儲存 其屬性不符合條件的工作。可將兩個分開的記憶體集合儲 存在不同時4又的相同記憶體位址。兩個分開的記憶體集合 可在不同的記憶體位址。在此情況下,兩個分開的記憶體 集合可在相同的半導體器件中,或在不同的半導體器件中。 較佳,組件包括溫度感測器。在此情況下,可根據溫度 感測器的輸出來選擇工作。該系統還包含能夠處理工作的 第一組件。根據各組件在處理工作後的預期溫度為各組件 選擇工作中的一或多個。該系統還包括為組件選擇工作中 一或多個的排程器。 【實施方式】 J00746.doc 為了清楚明暸之故,在說明如圖所示之本發明的較佳具 體實施例時,將會使用特定的專門用語。然而,本發明並 無意受限於所選的特定用語,且應明白,各特定用語包括 以相似方式運算以達成相似目的的所有均等技術。 現在參考圖3 A,其為可根據本發明各方面加以採用之基 本處理模組或處理器元件(PE)300的方塊圖。如此圖中所 示,PE 300較佳包含:I/O介面302、處理單元(PU)304、直 接記憶體存取控制器(DMAC)306、及複數個子處理單元 (SPU)308(即,SPU 308a-308d)。儘管顯示四個 SPU 308a_d, 但PE 300可包括任何數量的此類器件。本機(或内部)PE匯 流排 320 在 PU 304、SPU 308、I/O 介面 302、DMAC 306、及 記憶體介面310之中傳送資料及應用程式。本機PE匯流排 3 20可具有如習用的架構,或可作為分封交換網路來實施。 實施為封包切換網路儘管需要更多硬體,但可增加可用頻 寬。 可使用實施數位邏輯之各種方法來建構PE 300。然而, 較佳將PE 300建構為採用矽基板上CMOS的單一積體電 路。PE 3 00係透過高頻寬記憶體連接322而和記憶體330密 切相關聯。記憶體330理想上可當作PE 300的主記憶體。雖 然記憶體330較佳為動態隨機存取記憶體(DRAM),但記憶 體33 0也可以使用其他構件來實施,如:靜態隨機存取記憶 體(SRAM)、磁性隨機存取記憶體(MRAM)、光學記憶體、 全息記憶體等。DMAC 3 06及記憶體介面310可促進記憶體 3 3 0和PE 300之SPU 3 08與PU 3 04間之資料的傳輸。 100746.doc -15- PU 304可為如能夠獨立處理資料及應用程式的標準處理 器。在運算中,PU 304排程及協調由SPU 308處理資料與應 用程式。SPU 308較佳為單一指令、多個資料(SIMD)處理 器。在PU 3 04的控制下,SPU 308可按平行及獨立的方式處 理資料與應用程式。DMAC 306控制PU 3 04與SPU 3 08對儲 存於共用記憶體330中之資料與應用程式的存取。較佳’將 數個PE(如PE 300)結合或集中一起,或以其他的方式在邏 輯上和彼此相關聯,以提供加強的處理能力。 圖3B圖解包含多個根據本發明各方面進行運算之PE 3 50(PE 1、PE 2、PE 3、及PE 4)的處理架構。較佳,PE 350 係在單一晶片上。PE 350可包括或也可不包括上述有關圖 3八之?丑3 00的子系統,如?11及/或8?1;»根據所需處理的類 型,PE 350可以屬於相同或不同類型。例如,PE 350可以 是一般微處理器、數位信號處理器、圖形處理器等。 PE 350較佳聯結至共用匯流排352。記憶體控制器或 DMAC 356透過記憶體匯流排354連接至共用匯流排352。 DMAC 356連接至記憶體358,此記憶體可以是上述有關記 憶體330的類型之一。也可以透過I/O匯流排360將I/O控制器 362連接至共用匯流排352。I/O控制器362可連接至一或多 個I/O器件364,如訊框緩衝器、磁碟機等。應明白’上述 處理模組及架構僅為舉例,可和其他結構一起採用本發明 的各方面,包括但不限於如以下專利所揭露之類蛰的多處 理器系統:美國專利第6,526,491號,其標題為"Memory Protection System and Method for Computer Architecture for 100746.doc -16- 1345155
Broadband Networks(用於寬頻網路之電腦架構的記憶體保 護系統及方法)",核發於2003年2月25曰;及美國申請案第 09/816,004 號,其標題為"Computer Architecture and Software Cells for Broadband Networks(用於寬頻網路的電 腦架構及軟體單元)”,申請於2001年3月22曰,其在此以提 及的方式明確併入本文中。 圖4圖解根據本發明各方面所採用之SPU 400的結構與功 能。SPU 400較佳包括:本機存放區402、暫存器404、一或 多個浮點單元406及一或多個整數單元408。SPU 400的組件 則包含子組件,說明如下。根據所需的處理能力,可採用 更多或更少數量的浮點單元(FPU)406及整數單元 (IU)408。在一項較佳的具體實施例中,本機存放區402含 有至少128千位元組的儲存體,及暫存器404的容量是 128x128位元《浮點單元406較佳以每秒至少320億浮點運算 的速度(32 GFLOPS)進行運算,及整數單元408較佳以每秒 至少320億運算的速度(32 G0PS)進行運算。 本機存放區402較佳並非快取記憶體。並不需要用於SPU 400的快取記憶體一致性支援。而是,較佳將本機存放區402 建構為SRAM。對於由PU 204所啟始的直接記憶體存取,PU 204可能需要快取記憶體一致性支援》然而,對於由SPU 400 啟始的直接記憶體存取或對外部器件之間的存取,並不需 要快取記憶體一致性支援。 SPU 400進一步包括透過匯流排介面(匯流排I/F)412在 SPU 400之間傳送應用程式與資料的匯流排41 〇。在一項較 100746.doc 17 1345155 佳的具體實施例中,匯流排々^為^^位元寬。spu4〇〇進 -步包括内部匯流排414、416及418。纟一項較佳的具體實 施例中,匯流排414具有256位元的寬度並在本機存放區4〇2 及暫存器404之間提供通信。匯流排416及418分別在暫存器 404與洋點單TC406之間,以及暫存器4〇4與整數單元4〇8之 間提供通信《在一項較佳的具體實施例中,匯流排416及418 從暫存器404至浮點單元或整數單元的寬度為3料位元,及 匯流排416及418從浮點單元或整數單元至暫存器4〇4的寬 度為128位元。匯流排從暫存器4〇4至浮點單元4〇6及整數單 元408的較大寬度在處理期間容納暫存器4〇4的較大資料 流。在一項範例中,各計算需要最多三個字組。然而,各 計算的結果通常只有一個字組。
現在參考圖1,其中圖解形成於基板1〇〇上的組件1〇2。基 板100及組件102可包含電腦晶片的部分或全部。組件1〇2 可以是邏輯器件或其他電路。可將在基板1〇〇之區域中的一 或多個組件102關聯一起成為單元1〇4。單元1〇4及單元1〇4 的群組106也可以和彼此相關聯’以形成如:pE 3〇〇 ' pu 304、SPU 308、PE 350或其子組件。例如,單元的群組1〇6 可包含SPU 400,及群組106内的單元1〇4可包含:本機存放 區402、暫存器404、FPU 406、整數單元408、及匯流排I/F 412。各單元1 〇4則可亦包括其他單元1 〇4及組件1 〇2,如 dram記憶體單元、邏輯閘、緩衝器等。儘管使用組件1〇2、 單元104、及群組1〇6圖解各種複雜等級,但更常使用用語 "組件,,來代表所有等級的器件,從最基本的建立區塊(如, 100746.doc • 18· 1345155 電晶體及電容器)一直到PE 300或PE 350及整個電腦晶片本 身。通常’將組件建構為採用基板1〇〇上互補式金氧半導體 (CMOS)的積體電路。基板1〇〇較佳為矽基板。基板ι〇〇的替 代材料包括但不限於:砷化鎵、砷鋁化鎵及其他所謂採用 各種摻雜物的III-B化合物。也可以使用超導材料(如,快速 單一通量量子(RSFQ)邏輯)來實施組件1〇2。 由於組件執行運算如處理指令或工作(如,一連串指令), 組件通常會產生熱。如本文所用,用語"運算"或"工作"係指 要執行的活動,包括但不限於:單一或多個步驟的指令、 工作及程式。 在本發明的一方面,由組件執行的運算可和熱屬性相關 聯,致使熱屬性的值有關組件執行該運算時預期由組件產 生的熱量。較佳,熱屬性也是基於時間。例如,屬性的值 代表一段固定時間後所產生的熱量。 …、,可加以測量或估計。列如,可使用溫度計或其他
溫度感測器件以實際測量單元在執行特定運算時的溫度。 較佳根據組件的功率消耗來估計熱屬性。例如,一些組 件可能需要較多的運算功率,因而具有比較高的熱屬性。 其他組件可能具有相同的功率消耗但卻是較密集地集中一 起’因而傾向於比較為隔卩 ▲ 較為隔開的組件產生更多的熱。就此而 3 ’可根據兩個因子央任士+舳 件其巾熱職係根據組 牛的力率密度或組件的群組。 性可/5脉.猫* b在口P刀情況中’熱屬 拴了反映.預期組件執 ^ . θ 异于所產生的熱、—段時間後 斤產生的熱里'組件的一般 卞啊托*、組件的功率密度、 100746.doc 及相關(如,實體4、 或k軏上相關)群組之組件的功率密 為了達成晶片的有畤敘μ 在度。 缸有效熱官理,最好排程各組件的功率、'奋 ^可在晶片發展期間估計組件功率消耗。例如,可^ 日日、子糸統及/或個別組件的電路模擬。 订 較佳,熱屬性俦谁_丰4 〜 步和特定組件相關聯。例如,如杲 Ξ=:運算)僅涉及整數單元,則熱屬性特定: 目關聯。同樣地,浮點運算的熱屬 浮點單元406相關聯。其他運算可能涉及-組組件,! Γ本機存玫區術移至暫存⑽4。還有,其他運算= 〜及所有組件或很難歸類於任―特定組的組件。例如: 圖形可能涉及SPU4附的所有組件,其中熱屬性係 套用於卿彻中的所有組件。或者,可能很難預測個別的 =在執行運算時將產生多少熱,其卜般將運算的 性私派給組件的群組。下志固初 ^ _ 運算 WmH --------- 3-D彩現 12 姐·仟 c η τ τ 4 λ λ ------- 整數加法 3 orU 40υ IU 408 序點加法 記憶體移動 7 2 FPU 406 " 區402、暫存器404 ’.ά .、.〇又組的組件)的埶 屬性計算如下:TA=k*(P/s)e TA,等於組件的功率密度或、 功率消耗⑺的熱屬性,除以組件的大小或覆蓋區⑻乘以 用於熱估計的因子或常數(k)。 根據本發明的-方面,程式編譯器使用熱屬性以協助防 止組件過熱。可以軟體、韌體、硬體或其組合實施編譯器。 100746.doc •20- 1345155 可使編譯if和處理元件(如PE剔或PE 35q)或其子組件相 關聯(如,併人圖解本發明各方面的編譯器功能。如 本技術中所熟習’編釋器接收原始碼並產生能在計算系統 上執行的目標碼。根據本發明的各方面,編譯器接收原始 碼及關於運算及/或組件的熱H編譯器㈣根據熱屬性 來產生目標碼。編繹器藉由計算指令數來管理編譯時,將 靜態估計由編譯器編譯之目標碼的熱屬性。較佳使用"剖析 器"進行加強熱屬性判決,剖析器是能夠計算指令之動態執 行並能夠報告各組件之運算頻率的效能監控器。剖析器可 提供更精確之編譯器的熱估計,因而可產生熱最佳化目標 碼0 圖2A-B圖解編譯器或其他指令排程器如何管理運算,以 免使處理降級或損壞組件。為了圖解之故,假設熱臨界 代表不想超過的溫度。三角形區段A、Β、及C代表由組件 執行的指令。.例如,區段ΑΛΒ代表如產生明顯熱量的計算 -21· 始即決定運算A' B或c中任 埶 項疋否具有和其相關聯的 载譯W防止超仏一順序,有 =擇地將運算編料目“。在上述範例中,編譯器可變 昇專式的順序而不會變更最終結果。例如,其可按A、 g & i的詩排程運算。因此,如圖2B所見,變更指令的 貝序時,溫度並未未超過Tmaj^ θ请注意’熱臨界Tmax不·'定是故障溫度。而是,Tmax可以 疋如根據訂定的運算參數所選擇的設計標準。 此外’在重新排序運算時,編譯器較佳能夠記錄執行計 的組件。例如,一連串運算可能使SPU 400的-部分過熱 (如FPU 4G6) ’而SPU的其他部分則維持冷卻(如卿彻)。 編譯器較佳藉由以下方式來解決此問題:試著排程運算, 使,异在SPU的各種組件之巾平均分布。編譯^可這麼做 、方弋疋使用熱屬性追蹤或模擬組件在執行程式運算 時的/皿库。例如’假設組件乂在每個時脈週期2個熱屬性點 的速率時冷卻且在其過熱之前具有8個熱屬性點的定限。如 2和該組件相關聯的運算具有每個週期5點的熱屬性,則假 又、^過熱’如果連續執行該運算三次(第_週期後點, 使目月J的熱才曰數為3 ;第二週期後5·2點又增加3點,使目前 的:…才曰數為6,第二週期後5‘2點又增加3點,使目前的總 …心,為9)。已偵測組件χ在此排程下可能過熱後,編譯器 將"式著排&由另__個組件執行運算,而組件X則維持間置並 冷卻下來。 或者編譯器可試著選擇其熱屬性低於預期組件冷卻之 I00746.doc -22- U4M55 速率的不同運算。例如,如果編譯器決定在目前的運算排 程下可能過熱’則其會試著將具有熱屬性W的運算(以允 許組件冷部-些’假^其在—週期2熱屬性的速率下冷卻) 分散於具有熱屬性為5的運算之間。 根據組件包含在其他組件的程度,編譯器可進一步將較 大組件的熱屬性分配給其子組件,或從子組件分配給其父 組件。例如,如圖1G A所示,如果個別的組件同時執行具有
熱屬性為2、3、2、及7的運算,則可將所有這些運算之SPU 的熱屬性視為14。另一方而 ^ 另方面’可將可歸類於整個SPU 400 的熱屬性分配給個別的組件。如圖咖所示,如果3-D彩現 的熱屬性為並可歸類於整個咖,則可將該值平均分配 給SPU 400内的組件。其他分配變化也可以,包括在因容器 關係、邏輯功能、及實體接近程度而相關的組件之間及之 中進行分配。 不言可喻,各種組件的熱值不僅反映個別組件的即時運 算,並還可隨著時間累計及為各組組件進行總計。將這些 因子納入考量,編繹器即可有效排程運算,以避免熱臨界 Tmax。 較佳’冷卻屬性係和含有各種組件的電腦晶片相關聯。 冷部屬性根據電腦晶片之冷卻系統的特定特色而定。例 如’―冷部屬性較佳根據晶片封裝及冷卻器(如散熱片或風扇) 而定::果有的話。如果冷卻系統只有冷卻器的-個狀態 (如’水讀照設定的旋轉速度運轉風扇),則冷卻屬性為固 疋。如果可以藉由如變更風扇的旋轉速度來改變冷卻系統 100746.doc -23- 1345155
的狀態,則在冷卻系統變更冷卻器的運作狀態時,冷卻屬 性較佳為動態並可加以決定或更新。在一項具體實施例 中’編譯器使用根據冷卻器特有運作狀態而計算之固定的 冷部屬性。編譯器在計算特定組件所屬的運算密度時使用 冷卻屬性。較佳’編譯器亦將晶片封裝的散熱能力作為因 子算入。在進一步的具體實施例中’編譯器或剖析器採用 動態冷郃屬性以協助編譯器產生目標碼。下表圖解根據熱 屬性及冷卻屬性由給定整數單元(11;)4〇8及給定本機存放 區(LS)402處理之整篡的示範排程 指令# 指令處理組件 IU LS 1 LS 0 2 2 IU 3 1 3 LS 2 3 4 IU 5 2 5 nop 4 1 6 IU 7 〇 7 IU 10 〇 8 其他 9 0 9 nop 8 〇 10 nop 7 〇 • · * -- · ·. ♦»· 對於上述指令組,假設IU 408的熱屬性為3,晶片的冷卻 屬性為1,及IU 408的熱臨界為10〇最左欄代表指令編號, 第二櫊代表處理該指令的組件,及表中右邊的兩攔顯示組 件在處理指令後產生的熱或溫度。❹,指令】係由U處理 或實施,產生熱值為2,而IU保持為零。指令2係由卬運算, 之後,IU具有熱值為3,LS則冷卻至熱值為〖。處理繼續直 到指令5,其為"無運算(n〇p),%這允許出及“冷卻至某種 程度。IU處理指令6及7,使其熱值上升至定限。為免超過 100746.doc •24* 1345155 定限,較佳由不同組件(”其他")處理下-個指令。例如,剖 析器可監控m及LS的指令執行,然後將資訊報告給編譯 器。編譯器可結合熱屬性及冷卻屬性一起使用此資訊,使 指令8由另一個IU來處理。
現在參考圖5’其中圖解本發明各方面的多佇列排程方法 500。如® 5所見,排程器502較佳和兩個仔列相關聯。為了 方便,本文將第一佇列稱為"熱佇列”5〇4及將第二佇列稱為 ”冷佇列”506。可以許多不同方式實施佇列5〇4、5〇6,如記 憶體中的資料結構,或連續或間斷的集合。在一項採用SPU 400的範例中’在SPU 400的外部實施佇列5〇4、506。也可 以在如和記憶體330(或記憶體358)相關聯之PU 304或PE 300(或PE 350)的外部實施仔列5〇4、5〇6。在另一項範例中, 在SPU 400的内部實施符列5〇4、506。理想上,仔列5〇4、 506的實施可和本機存放區4〇2或暫存器4〇4相關聯。例如, 可結合第一 SPU 400的本機存放區402實施熱佇列504,及可 結合第二SPU 400的本機存放區402實施冷仔列506。在SPU ^ 400包括多個本機存放區402時,可將熱佇列504儲存於本機 存放區402的第一本機存放區,將冷佇列506儲存於相同 SPU 400之本機存放區402的第二本機存放區。或者,可在 8?1140〇的外部或?£ 300的外部,在相同的本機存放區4〇2 或在相同的記憶體中實施熱佇列504及冷佇列506。如果經 由暫存器404實施佇列504、506,則各種替代方案都可行。 在一個情況中,可經由第一 SPU 400的暫存器404實施熱狩 列5 04 ’及可經由第二SPU 400的暫存器404實施冷符列 100746.doc •25· 1345155 5〇6。也可以按分時配置來實施佇列5〇4、5〇6,如其中佇列 504、506中的一個係於第一時段儲存於記憶體中,然後佇 列504、506的另一個係於第二時段儲存於記憶體中。 排程器502可根據熱屬性將指令、工作或其他運算置放於 熱佇列504及冷佇列506。較佳,排程器5〇2可存取含有熱屬 性的查找表。排程器502在執行時間運算之前及/或之中進 行運算。排程器502可根據組件的目前(或預測)溫度從熱佇 列504或冷佇列506選擇工作。在一項較佳的範例中只要 器件的目前溫度未超過運算底限,排程器5〇2即可從熱佇列 5〇4或冷佇列506選擇任何工作。在另一項較佳的範例中, 如果未超過運算底限且如果熱工作及冷工作均為可用則 排程器502可在從冷佇列5〇6選擇工作之前,先從熱佇列5〇4 選擇工作。僅是舉例,可使需要多個運算的浮點指令或工 作和相對較商或正熱屬性值相關聯。可將這些運算放在熱 仔列504中,如工作!^ ^^所示。其他運算如整數指令及 單一運算工作,可和相對較低或負熱屬性相關聯。可將此 類運算放在冷佇列506中,如工作c】…Cn所示。工作的熱屬 J·生較佳使用編譯器及/或剖析器的資訊來決定,任一個均可 報告各組件執行工作的運算頻率。較佳,工作的熱屬性可 併入組件的運算頻率(如,使用頻率)、組件的熱屬性、及冷 卻屬性。根據一項具體實施例,簡單的排程器僅使用具有 子組件(如SPU 400)之組件的總熱屬性。根據另—項具體實 包幻進1¾排程器管理SPU之子組件(如ls 402、FPU 406、 及IU 408)的熱屬性。下表圖解給定spu+lu、Fpu、及ls I00746.doc -26- 1345155 用於3-D工作及MPEG-2工作的熱屬性。 工作 IU FPU LS 總數(SPU) 3-D 3 7 2 12 MPEG-2 2 0 0 2 只注意SPU之總熱屬性的簡單排程器將發現其具有數值 為12,且其可能超過SPU的熱臨界。因此,此簡單的排程 器僅選擇MPEG-2工作,以由SPU執行。相反地,進階排程 器較佳監控SPU的子組件。在此情況下,進階排程器將發 現沒有任何子組件超過其熱臨界,因此可以選擇3-D工作。 § 在一項替代方案中,排程可重新排序工作或工作内的運 算,致使在特定階段執行MPEG-2工作,讓FPU有時間進行 冷卻。此彈性為功能強大的工具,可讓子組件、組件及/或 整個多處理系統進行運算時不會過熱。 如本技術者所明白,可在硬體、韌體、或軟體中實施排 程器502。較佳,排程器502係為基於硬體且在PU 204中實 施。在另一項較佳的替代方案中,排程器502係為基於軟體 並屬於總計算器件之運算系統的部分。熱佇列504及冷佇列 _ 506較佳在程式執行期間可透過匯流排508由一或多個 PE(PE1...PEN)、PU(PU1".PUN)、及/或 SPU(SPU1...SPUN) 存取。根據一項具體實施例,各PE、PU及/或SPU較佳包括 熱感測器(溫度感測構件),以監控其溫度,或者,估計目前 的溫度。根據另一項具體實施例,各PE較佳包括熱感測器 及類比至數位A/D轉換器,以提供溫度的數位估計。PE的 各核心較佳隨時讀取其自己的數位化溫度。PE、PU、及SPU 理想上各具有熱臨界Tmax,且每個組件的熱臨界都不一 100746.doc -27- 樣。如果無法使用熱感測器,則可!i ώi# μ & s α 此 則J鞛由工作的熱屬性及目 别的冷卻屬性來計算目前的溫度。 Γ502也可以不用件列來管理運算。可將運算儲存於 L體中’及排程115G2可根據熱輕指派部分運算給處理 個·如果有兩個運算,則排程器可根據熱屬性將兩 個運算指派給兩個分開的步 - 刀開的處理凡件3 〇 〇 (或其他處理器件)。 可將運算儲存於分開的記情體 u遛千(或早一記憶體之分開的 口 P分中)。可將第一運算餹尨 ㈣存於第—記憶體巾(或單_記憶體 ^刀)及可將第二運算儲存於第二記憶體中(或單— 記憶體的第二部分)。不必同時儲存兩個運算;而是可將盆 儲存在不同時段中的相同或不同記憶體中(及在固定或可 變的連續或間斷期間交替)。^ οβ 朁)此外,應明白,兩個記憶體(或 單一記憶體的兩個部分)又一 6 θ 丨刀)不疋是限於特定運算或和特定 熱屬性相關聯之運算的專用4陰 。 耵寻用°己隐體。因此,第一記憶體(或 卓一 δ己憶體的第一部分)可啟左赞 ^ 。。 刀)了儲存第二運算,及第二記憶體(或 早一記憶體的第二部分彳可枝左哲 垃冲 I刀)可儲存第一運算。同樣地,應明 白’第一符列及第二件列504 丁幻Μ4 506可以相似的方式進行運 算。 圖6圖解獲得及處理運篡妨 遇异之較佳方法的流程圖600。在步 驟602, PE、PU、或SPU決定Α日-以 ^ 决疋其目則的溫度是否在熱臨界 今 n x max 如果超過τ_,則程序接著前進至步驟6〇4 ,否則 程序進行至步驟_。在步驟6〇4,決定熱行列5〇4的運算是 =可用#果運算可用’則程序前進至步驟_,否則程序 ⑴進至步驟608 °在步驟6〇6’ pE、pu*spu獲得"熱"運算, 100746.doc •28- 1345155
然後執行之。完成運算後,程序返回步驟6〇2。在步驟6〇8, 決定冷符列506的運算是否可用。如果運算可用,則程序前 進至步驟否則,此程序進行到步驟612❶在步驟“㈧ PE、PU或SPU獲得"冷”運算,然後執行之。完成運算後, 程序返回步驟60h如果沒有任何工作可供處理,則程序可 在返回步驟602之前,在步驟612閒置或執行"n〇p”一段時間 (如’預定的週期數)。視情況,如以上有關圖5所述,如果 熱工作及冷工作可用且未超過,則可選擇熱工作或冷 工作。因此,如流程圖600所示,處理器件能夠藉由選擇熱 佇列504及冷佇列506的工作以避免熱點及過熱。此程序可 由一或多個處理器件同時執行,從而允許不用改變時脈速 度或關閉處理器件,即可執行指令及工作。
可以結合熱佇列及冷佇列和優先權佇列的使用,如圖7 所示。在此圖中,提供多佇列排程方法54〇。排程器542係 和三個優先權佇列相關聯:高優先權佇列544、中優先權佇 列546、及低優先權佇列548,不過也可以採用不同的優^ 權等級及佇列數。排程器542運算如以上參考排程器5〇2所 述。各優先權佇列544、546、及548較佳包括熱佇列及冷佇 列,其係以上述有關圖5的相同方式加以建立及運算。例 如,高優先權佇列544具有用於處理工作Hih Hnh的熱佇= 及用於處理工的冷佇列。同樣地,中優先權佇 列具有用於處理工作H1M…HNM的熱佇列及用於處理工^ C1M...CNM的冷佇列。低優先權佇列具有用於處理工作 的熱佇列及用於處理工作Cr...Cnl的冷佇列。 I00746.doc -29- ^155 圖8圖解採用優先權佇列時用於獲得及處理運算之較佳 方法的流程圖800。初始,在步驟801,PE、PU、或sp\j決 定要採用的優先權佇列,如,高優先權佇列544、中優先權 <丁列546、或低優先權佇列548。在步驟802,PE、Pu、或 spu決疋其目前的溫度是否在熱臨界之上。如果未超過 Tmax ’則程序接著前進至步驟8〇4,否則程序進行至步驟 808。在步驟8〇4,決定所選優先權佇列之熱佇列5〇4的運算 • 疋否可用。如果運算可用,則程序前進至步驟806,否則程 序進行至步驟808。在步驟806,PE、PU或SPU獲得,,熱"運 算,然後執行之。完成運算後,程序返回步驟8〇1 β在步驟 808 ’決定所選優先權佇列之冷佇列5〇6的運算是否可用。 如果運算可用,則程序前進至步驟810,否則程序進行至步 驟8 12。在步驟8 1 〇,PE、PU或SPU獲得”冷”運算,然後執 打之。完成運算後,程序返回步驟801。如果沒有任何工作 可供處理,則程序在返回步驟8〇1之前在步驟812閒置。視 φ 情況’如果給定優先權等級的熱工作及冷工作可用且未超 過Tmax ’則可選擇該優先權等級的熱工作或冷工作。因此, 如流程圖800所示,處理組件能夠藉由在執行時間期間選擇 各種優先權佇列544、546、及548之熱佇列及冷佇列的工 作,來避免熱點及過熱。此程序可由一或多個處理組件同 時執行,從而允許不用改變時脈速度或關閉處理組件,即 可執行指令及工作。在替代方案中,如果處理器件變得過 熱且接近或超過Tmax,則可從較低優先權佇列(如,中優先 權佇列546或低優先權佇列548)選擇運算及/或按降低的時 I00746.doc •30· U45155 脈週期執行運算’而不管運算的熱屬 工作可按降低的時脈週期來執行。 員較低優先權 在部分情兄中’組件在執行運算(如,工 :熱臨界W但接著在工作執行期間可能超過::過 :,此類發生情況可能必須關閉組件,以允許組件:卻 ‘,、、而’已發展可解決此問題的技術 理器環境。 ,、尤其適用於多處 圖9Α圖解多個執行工作群組的叩。在此範例中,假謂 2在其處理工作碥間過熱。可以將工作mpE2移動至其他 可能運算其他工作(如’工作2及工作3)的處理器之…宜他 工作較佳為低於PE2目前執行之卫作的較低優先權工作。 如圖9B所示,其他處理器中的工作,如工作3,可"交換” 並發送至如合適的佇列(或不同的處理器^因此,1^2在1>五 3完成工作1時不會執行工作。或者,兩個處理器可交換工 作,致使PE2執行較低優先權工作,如圖9C所示。圖9〇所 示,⑴初始,PE2及PE3可以標準時脈速度(如,5〇〇MHz) 進行運算。接著,(2)如果PE 2在運算高優先權工作i時變 熱,則其工作可和PE 3的較低優先權工作3交換。最後,(3) 可以較慢或降低的時脈速度(如,25〇 MHz)執行較低優先權 工作3,以允許pE 2冷卻,而pe 3繼續以5〇〇 MHz的標準時 脈速度執行工作1 ^也可以增加時脈速度(如,增加至65〇 ΜΗζ) ’以執行較高優先權工作。應明白,標準、增加、及 降低的時脈速度只是示範,因此可根據處理器、子處理器 的特疋架構及/或多處理系統的最大時脈速率而有所變 100746.doc •31- 1345155 化。在最糟的情況中,過熱的處理器可在溫度達到理想等 級之前終止運算。然而,多處理器系統中的其他處理器將 繼續處理,以便迅速執行即時運算及其他重要運算。儘管 在圖9A-C中顯示PE,但也可以PU及SPU或各種處理器件的 組合執行相同的運算。例如,過熱的spU3〇8可將其高優先 權工作發送給PU 304,然後PU 304再重新將工作指派給第 二SPU 308。同樣地,PU 304可以取得第二spu3〇8的較低 優先權工作,然後將其指派給第一 SPU 308。在第一 SPU 308 冷卻後,即可恢復以正常時脈速度來處理高優先權及/或 "熱"工作。 雖然已參考特定具體實施例來說明本發明,但應明白, 這些具體實施例僅係用以說明本發明的原理及應用。因 此,應明白,可以對該等說明性具體實施例進行大幅修改, 並且可在不脫離隨附申請專利範圍所定義之本發明的精神 及範疇下設計其他配置。 工業適用性 本發明適用於減少熱點的技術,其係藉由在處理環境中 有效分配指令及 工作。 【圖式簡單說明】 圖1圖解本發明各方面之分成不同組合的組件。 圖2A-B為標繪計算器件之溫度對時間的曲線圖。 圖3A為圖解本發明各方面之處理元件(pE)之示範結構的. 圖式。 圖3B為圖解本發明各方面之托之多處理系統之示範結 100746.doc •32- 1345155 構的圖式。 圖4為圖解本發明各方面之子處理單元(spu)之示範結構 的圖式。 圖5為圖解本發明各方面之多佇列排程的圖式。 圖6為圖解本發明各方面之示範動態排程程序的流程圖。 圖7為圖解本發明各方面之多佇列排程的圖式。 圖8為圖解本發明各方面之示範動態排程程序的流程圖。 圊9A-C為圖解本發明各方面之工作遷移的圖式。 圖1OA-B圖解和本發明各方面之組件相關聯的組件及熱 值。 圖11圖解本發明各方面的編譯器功能。 【主要元件符號說明】 100 基板 102 組件 104 qg — 早兀 106 單元104的群組 204 處理單元(PU) 300 處理器元件(PE) 302 I/O介面 304 處理單元(PU) 306 直接記憶體存取控制器(DMAC) 308(308a-308d) 子處理單元(SPU) 310 記憶體介面 320 本機(或内部)PE匯流排 100746.doc •33· 1345155 322 高頻寬記憶體連接 330 記憶體 350 處理器元件(PE) 352 共用匯流排 354 記憶體匯流排 356 直接記憶體存取控制器(DMAC 358 記憶體 360 I/O匯流排 362 I/O控制器 364 I/O器件 400 子處理單元(SPU) 402 本機存放區 404 暫存器 406 浮點單元 408 整數單元 410 匯流排 412 匯流排介面 414 内部匯流排 416 内部匯流排 418 内部匯流排 502 排程器 504 熱佇列 506 冷佇列 I00746.doc 34- 1345155 508 匯流排 542 排程器 544 高優先權佇列 546 中優先權佇列 548 低優先權佇列 100746.doc •35-
Claims (1)
1345155
第094109855號專利申請案 中文申請專利範圍替換本(97年4月) 十、申請專利範圍: 1. 一種執行運算之方法,其包含下述步驟 提供要由組件執行的複數個運算; 使該等複數個運算中之各個運算和一熱屬性相關聯, 該熱屬性代表有關預期在運算執行期間由該組件所產生 的一熱量值; 利用與該等複數個運算中之各個運算相關聯之熱屬
I·生’來推疋在執行該等複數個運算中之某個$算時之組 件的溫度;及 麵推定之組件的溫度未超過熱臨界之情況,排程和 T會使得組件的溫度維持或增加之熱屬性相關聯 第運算的步驟,在所推定之組件的溫度超過熱臨界 月兄排程和執行運算會使得組件的溫度降低之熱屬 性相關聯之第二運算的步驟。 2.如請求項1之執行運
异之方法,其進一步包含以一溫度感 測構件測量該組件的溫度的步驟;且 、該組件的溫度係亦利用被測量之該組件的溫度而推 疋。 啊α建昇之方法,其中 該組件的功率消耗而推定。 4·如請求項3之執行運苴 ^ 之方法,其中該組件的溫度係藉由 執以組件的-電路模擬而推定。 5.如請求項2之執行運算 決定兮之方法,其中該組件的溫度係藉由 該組件的一功率密度而推定。 100746-970425.doc 6.如清求項1之執行運算之方法,其進一步包含該組件係按 所排程之執行順序執行運算的步驟。 7·如叫求項1之執行運算之方法,其中該組件包括複數個處 理器件’及該組件的溫度係根據該等複數個處理器件中 執灯運算之處理器件所執行之複數個運算的總熱屬性而 推定。 8·如叫求項7之執行運算之方法,其中該等複數個處理器件 中之各個處理器件各具有一個別的熱臨界。 9·如明求項7之執行運算之方法,其進一步包含下述步驟: 選擇該等處理器件中至少部分以執行該等運算; 提供要由所選擇之處理器件執行的複數個運算; 使該等複數個運算中之各個運算和一熱屬性相關聯, 該熱屬H代表有關預期在運算執行期間由該處理器件所 產生的一熱量值;及 利用與該等複數個運算中之各個運算相關聯之熱屬 性,排程該該等複數個運算之執行順序,以免在該等複 數個運算執行期間’該所選擇之各個處理器件的溫度超 過該處理器件之個別的熱臨界。 1〇·如請求W之執行運算之方法,其中該組件包括複數個處 理器件,及在該等複數個處理器件之中分配該熱屬性。 "·如請求項!之執行運算之方法,其進一步包含藉由以下方 式決定該熱屬性: (i) 決定該組件的功率消耗; (ii) 決定該組件的一覆蓋區; 100746-970425.doc •2- ^^155 (in)依該組件的覆蓋區區分該組件的功率消耗,以獲得 每單位面積功率消耗;及 (W)將每單位面積功率消耗乘以一熱估計常數。 如叫求項1之執行運算之方法,其進—步包含下述步驟: 決定一冷卻屬性; -中排程該等運鼻將該冷卻屬性連同該熱屬性—起併 入0 13. 如清求項1之執 丁递异之方法,其中如果該第 用’則不執行運算。 14. 如請求項I之執行運算之方法,其進一步包含下述步驟 決定一優先權等級; 該優先權等級之—優先權仵列的該第-運 可用;及 權佇列的第二運算是否可用。 15.如請求項1之執行運算 存於記憶體的至少—㈣//其中該等複數個運算痛 16·如請求項丨之執行運算之方 存於記㈣的至少^ 料錢個運算係 符合一條件的運個仔列健存其熱屬士 該條件的運算。 個仔列儲存其熱屬性不符4 17.如請求項16之執行運算之 是否超過臨界。 /、中該條件是該熱屬性 18·如請求項1之執行運算之 100746-970425.doc ,,其中該等複數個運算之名 ' A在執行之别係儲存於記憶體的不同位址中。 如明,項1之執行運算之方法,其中該等複數個運算之各 、算在執行之則係儲存於記憶體在不同時間的相 址中。 2〇·如請求们之執行運算之方法,其中該組件係為一處理 器。 月求項1之執行運算之方法,其進一步包含下述步驟: 接收原始碼及熱屬性;及 利用所接收之原始碼及熱屬性來產生目標碼。 22· —種運算處理系統,其包含: 排私器,其排程該等複數個運算之執行順序;及 一處理器,其執行所排程之該等複數個運算;且 »亥排程器利用與該等複數個運算中之各個冑算相關聯 之熱屬性,來推定在執行該等複數個運算中之某個運算 時之處理器的溫度;在所推定之處理器的溫度未超過熱 臨界之情况,排程和執行運算會使得處理器的溫度維持 或增加之熱屬性相關聯之第一運算;在所推定之處理器 的溫度超過熱臨界之情況,排程和執行運算會使得處理 器的溫度降低之熱屬性相關聯之第二運算。 23_如請求項22之運算處理系統,其中該處理器包括用於測 里該處理|§溫度的溫度感測構件;且 該排程器係亦利用被測量之該處理器的溫度來推定該 處理益的溫度。 24·如請求項23之運算處理系統,其中該處理器進一步包括 100746-970425.doc 1345155 -類比至數位轉換器’其可從該溫度感測構件接收一溫 度值並輸出一數位溫度值。 25.如請求項22之運算處理系統,其中該處理器包括複數個 子處理器。 26, 如請求項25之運算處理系統,其中該處理器具有和該所 27, 選處理器關聯但不和該子處理器相關聯的一總熱屬性。 如請求項25之運算處理系統,其中該等複數子處理器之 各子處理器各具有-和其他子處理器的組件熱屬性有所 區別的組件熱屬性。 28 如請求項22之運算處理系、統,其中該等複數個運算係儲 存於記憶體的至少一佇列中。 29 如請求項22之運算處理系統’其中該等複數個運算係儲 存於記憶體的至少兩個仔列中’一個仔列儲存其執屬性 符合-條件的X作’及另-個㈣儲存其熱屬性不符合 該條件的工作。 σ 鲁3G.如請求項29之運算處理系統,其中該條件係為該熱屬性 是否超過臨界。 、 31.如請求項22之運算處理系統,其中該等複數個運算之各 個運算在轨行之前係儲存於記憶體在不同時間的 址中。 32.如請求項22之運算處理系統, τ邊》己憶體包含兩個$ 開的記憶體集合,一個記憶體集合儲存其熱屬性符合 條件的運算,及另-個記憶體集合儲存其熱屬性不^ 該條件的運算。 100746-970425.doc -5- 1345155 33. 如請求項32之運算處理系統,其中該兩個分開的記憶體 集合係儲存於不同的記憶體位址。 34. 如請求項32之運算處理系統,其中該兩個分開的記憶體 集合係配置在相同的半導體器件中。 35·如清求項32之運算處理系統,其中該兩個分開的記憶體 集合係配置在不同的半導體器件中。 36, 如請求項22之運算處理系統,其中進一步包括一執行運 算的第二處理器;且 該排程器根據各處理器的預期溫度,將該等複數個運 算之各個對各處理器排程。 37. 如請求項22之運算處理系統’其中 該排程器接收原始碼及熱屬性,利用所接收之原始碼 及熱屬性來產生目標碼。 100746-970425.doc
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/812,177 US8224639B2 (en) | 2004-03-29 | 2004-03-29 | Methods and apparatus for achieving thermal management using processing task scheduling |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200602885A TW200602885A (en) | 2006-01-16 |
| TWI345155B true TWI345155B (zh) | 2011-07-11 |
Family
ID=34962549
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW094109855A TW200602885A (en) | 2004-03-29 | 2005-03-29 | Methods and apparatus for achieving thermal management using processing task scheduling |
Country Status (9)
| Country | Link |
|---|---|
| US (3) | US8224639B2 (zh) |
| EP (1) | EP1730635B1 (zh) |
| JP (1) | JP4053547B2 (zh) |
| KR (1) | KR101120215B1 (zh) |
| CN (1) | CN100504790C (zh) |
| AT (1) | ATE387663T1 (zh) |
| DE (1) | DE602005005035T2 (zh) |
| TW (1) | TW200602885A (zh) |
| WO (1) | WO2005096150A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI463833B (zh) * | 2012-10-31 | 2014-12-01 | Delta Electronics Inc | 感測器資料的快取裝置及其快取方法 |
Families Citing this family (98)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7174194B2 (en) * | 2000-10-24 | 2007-02-06 | Texas Instruments Incorporated | Temperature field controlled scheduling for processing systems |
| JP4152348B2 (ja) * | 2004-06-03 | 2008-09-17 | 株式会社ソニー・コンピュータエンタテインメント | 電子デバイス冷却装置、電子デバイスシステムおよび電子デバイス冷却方法 |
| JP3781758B2 (ja) * | 2004-06-04 | 2006-05-31 | 株式会社ソニー・コンピュータエンタテインメント | プロセッサ、プロセッサシステム、温度推定装置、情報処理装置および温度推定方法 |
| US7347621B2 (en) * | 2004-07-16 | 2008-03-25 | International Business Machines Corporation | Method and system for real-time estimation and prediction of the thermal state of a microprocessor unit |
| JP3914230B2 (ja) * | 2004-11-04 | 2007-05-16 | 株式会社東芝 | プロセッサシステム及びその制御方法 |
| US7454631B1 (en) * | 2005-03-11 | 2008-11-18 | Sun Microsystems, Inc. | Method and apparatus for controlling power consumption in multiprocessor chip |
| US7848901B2 (en) * | 2005-11-29 | 2010-12-07 | International Business Machines Corporation | Tracing thermal data via performance monitoring |
| US7698089B2 (en) | 2005-11-29 | 2010-04-13 | International Business Machines Corporation | Generation of software thermal profiles executed on a set of processors using processor activity |
| US7386414B2 (en) * | 2005-11-29 | 2008-06-10 | International Business Machines Corporation | Generation of hardware thermal profiles for a set of processors |
| US7376532B2 (en) * | 2005-11-29 | 2008-05-20 | International Business Machines Corporation | Maximal temperature logging |
| US20070124618A1 (en) * | 2005-11-29 | 2007-05-31 | Aguilar Maximino Jr | Optimizing power and performance using software and hardware thermal profiles |
| US7490017B2 (en) * | 2005-11-29 | 2009-02-10 | International Business Machines Corporation | Analytical generation of software thermal profiles |
| US7395174B2 (en) * | 2005-11-29 | 2008-07-01 | International Business Machines Corporation | Generation of software thermal profiles executed on a set of processors using thermal sampling |
| US7460932B2 (en) * | 2005-11-29 | 2008-12-02 | International Business Machines Corporation | Support of deep power savings mode and partial good in a thermal management system |
| US7512530B2 (en) * | 2005-11-29 | 2009-03-31 | International Business Machines Corporation | Generation of software thermal profiles for applications in a simulated environment |
| US7480586B2 (en) * | 2005-11-29 | 2009-01-20 | International Business Machines Corporation | Thermal interrupt generation |
| US7721128B2 (en) * | 2005-11-29 | 2010-05-18 | International Business Machines Corporation | Implementation of thermal throttling logic |
| US7603576B2 (en) * | 2005-11-29 | 2009-10-13 | International Business Machines Corporation | Hysteresis in thermal throttling |
| US7681053B2 (en) * | 2005-11-29 | 2010-03-16 | International Business Machines Corporation | Thermal throttle control with minimal impact to interrupt latency |
| US7512513B2 (en) * | 2005-11-29 | 2009-03-31 | International Business Machines Corporation | Thermal throttling control for testing of real-time software |
| KR20070108432A (ko) * | 2006-01-23 | 2007-11-12 | 엘지전자 주식회사 | 장치관리 스케줄링 방법 |
| WO2007083973A1 (en) * | 2006-01-23 | 2007-07-26 | Lg Electronics Inc. | Terminal and method for performing device management scheduled based on threshold |
| US8104037B2 (en) * | 2006-01-23 | 2012-01-24 | Lg Electronics Inc. | Terminal and method for performing device management scheduled based on threshold |
| KR101342372B1 (ko) * | 2006-01-23 | 2013-12-16 | 엘지전자 주식회사 | 단말 및 그 단말에서의 장치관리 스케줄링 방법 |
| KR101349805B1 (ko) | 2006-01-25 | 2014-01-10 | 엘지전자 주식회사 | 트랩 메커니즘을 이용한 장치관리 스케줄링 방법 및 그단말 |
| US7421601B2 (en) * | 2006-02-17 | 2008-09-02 | International Business Machines Corporation | Method and system for controlling power in a chip through a power-performance monitor and control unit |
| US7552346B2 (en) * | 2006-05-03 | 2009-06-23 | International Business Machines Corporation | Dynamically adapting software for reducing a thermal state of a processor core based on its thermal index |
| US7596430B2 (en) * | 2006-05-03 | 2009-09-29 | International Business Machines Corporation | Selection of processor cores for optimal thermal performance |
| US8037893B2 (en) * | 2006-05-03 | 2011-10-18 | International Business Machines Corporation | Optimizing thermal performance using thermal flow analysis |
| JP5151203B2 (ja) * | 2007-03-26 | 2013-02-27 | 日本電気株式会社 | ジョブスケジューリング装置及びジョブスケジューリング方法 |
| US7886172B2 (en) * | 2007-08-27 | 2011-02-08 | International Business Machines Corporation | Method of virtualization and OS-level thermal management and multithreaded processor with virtualization and OS-level thermal management |
| US8445913B2 (en) | 2007-10-30 | 2013-05-21 | Spansion Llc | Metal-insulator-metal (MIM) device and method of formation thereof |
| US8027798B2 (en) * | 2007-11-08 | 2011-09-27 | International Business Machines Corporation | Digital thermal sensor test implementation without using main core voltage supply |
| US7870370B2 (en) * | 2007-12-19 | 2011-01-11 | International Business Machines Corporation | Determining thermal characteristics of instruction sets |
| JP4804490B2 (ja) * | 2008-02-18 | 2011-11-02 | 富士通株式会社 | 情報処理装置、情報処理方法、情報処理プログラム |
| US8296773B2 (en) * | 2008-06-30 | 2012-10-23 | International Business Machines Corporation | Systems and methods for thread assignment and core turn-off for integrated circuit energy efficiency and high-performance |
| US7757233B2 (en) * | 2008-07-10 | 2010-07-13 | International Business Machines Corporation | Controlling a computer system having a processor including a plurality of cores |
| JP5309815B2 (ja) * | 2008-09-09 | 2013-10-09 | 富士通株式会社 | 電力供給管理装置および電力供給管理方法 |
| US8566539B2 (en) * | 2009-01-14 | 2013-10-22 | International Business Machines Corporation | Managing thermal condition of a memory |
| US8321057B2 (en) * | 2009-03-12 | 2012-11-27 | Red Hat, Inc. | Infrastructure for adaptive environmental control for equipment in a bounded area |
| US8311683B2 (en) | 2009-04-29 | 2012-11-13 | International Business Machines Corporation | Processor cooling management |
| JP2011022940A (ja) * | 2009-07-17 | 2011-02-03 | Nec Corp | 情報処理装置および情報処理方法並びにプログラム |
| US8631411B1 (en) | 2009-07-21 | 2014-01-14 | The Research Foundation For The State University Of New York | Energy aware processing load distribution system and method |
| TWI430077B (zh) | 2009-09-30 | 2014-03-11 | Ibm | 用於電腦系統的風扇控制系統與方法 |
| TWI394033B (zh) * | 2009-10-30 | 2013-04-21 | Ibm | 用於不同高度之電腦系統的風扇控制系統與方法 |
| US8887171B2 (en) * | 2009-12-28 | 2014-11-11 | Intel Corporation | Mechanisms to avoid inefficient core hopping and provide hardware assisted low-power state selection |
| US8495604B2 (en) * | 2009-12-30 | 2013-07-23 | International Business Machines Corporation | Dynamically distribute a multi-dimensional work set across a multi-core system |
| JP5531679B2 (ja) * | 2010-03-04 | 2014-06-25 | 日本電気株式会社 | Smt対応cpuを有する情報処理装置の消費電力低減方法、消費電力低減装置及び消費電力低減プログラム |
| US8484495B2 (en) * | 2010-03-25 | 2013-07-09 | International Business Machines Corporation | Power management in a multi-processor computer system |
| US8776069B2 (en) * | 2010-12-07 | 2014-07-08 | International Business Machines Corporation | Energy and performance optimizing job scheduling |
| US9207730B2 (en) * | 2011-06-02 | 2015-12-08 | Apple Inc. | Multi-level thermal management in an electronic device |
| US8688289B2 (en) * | 2011-07-07 | 2014-04-01 | Qualcomm Incorporated | Method and system for preempting thermal load by proactive load steering |
| US8516460B2 (en) * | 2011-08-02 | 2013-08-20 | International Business Machines Corporation | Real-time temperature sensitive machine level code compilation and execution |
| US8688883B2 (en) | 2011-09-08 | 2014-04-01 | Intel Corporation | Increasing turbo mode residency of a processor |
| GB2514966B (en) * | 2012-06-29 | 2020-07-15 | Hewlett Packard Development Co | Thermal prioritized computing application scheduling |
| US9618988B2 (en) * | 2012-07-03 | 2017-04-11 | Nxp Usa, Inc. | Method and apparatus for managing a thermal budget of at least a part of a processing system |
| US9329648B2 (en) * | 2012-07-17 | 2016-05-03 | International Business Machines Corporation | Performance management of subsystems in a server by effective usage of resources |
| US9152471B2 (en) * | 2012-12-12 | 2015-10-06 | International Business Machines Corporation | System performance using cooling configuration information |
| US10528385B2 (en) | 2012-12-13 | 2020-01-07 | Microsoft Technology Licensing, Llc | Task completion through inter-application communication |
| US9313162B2 (en) | 2012-12-13 | 2016-04-12 | Microsoft Technology Licensing, Llc | Task completion in email using third party app |
| US20140173602A1 (en) * | 2012-12-14 | 2014-06-19 | Microsoft Corporation | Matching Opportunity to Context |
| US9535708B2 (en) * | 2012-12-21 | 2017-01-03 | Cisco Technology Inc. | Rate-controlling of heat generating data processing operations |
| TWI617988B (zh) | 2013-01-31 | 2018-03-11 | 聯想企業解決方案(新加坡)有限公司 | 根據處理器位置之熱條件進行排程的電腦系統與方法 |
| US9342443B2 (en) | 2013-03-15 | 2016-05-17 | Micron Technology, Inc. | Systems and methods for memory system management based on thermal information of a memory system |
| US9557792B1 (en) | 2013-05-31 | 2017-01-31 | Amazon Technologies, Inc. | Datacenter power management optimizations |
| US9292293B2 (en) * | 2013-08-08 | 2016-03-22 | Qualcomm Incorporated | Intelligent multicore control for optimal performance per watt |
| US9588555B2 (en) * | 2013-08-22 | 2017-03-07 | Globalfoundries Inc. | Managing cooling operations in a parallel computer comprising a plurality of compute nodes |
| JP6201530B2 (ja) | 2013-08-30 | 2017-09-27 | 富士通株式会社 | 情報処理システム、ジョブ管理装置、ジョブ管理装置の制御プログラム、及び、情報処理システムの制御方法 |
| KR20150050135A (ko) | 2013-10-31 | 2015-05-08 | 삼성전자주식회사 | 복수의 이종 코어들을 포함하는 전자 시스템 및 이의 동작 방법 |
| CN104699218B (zh) | 2013-12-10 | 2019-04-19 | 华为终端(东莞)有限公司 | 一种任务管理方法及设备 |
| US9244747B2 (en) * | 2014-03-13 | 2016-01-26 | Qualcomm Incorporated | System and method for providing dynamic clock and voltage scaling (DCVS) aware interprocessor communication |
| US9530174B2 (en) | 2014-05-30 | 2016-12-27 | Apple Inc. | Selective GPU throttling |
| US9436628B2 (en) | 2014-05-30 | 2016-09-06 | Apple Inc. | Thermal mitigation using selective I/O throttling |
| WO2016106715A1 (en) * | 2014-12-31 | 2016-07-07 | SZ DJI Technology Co., Ltd. | Selective processing of sensor data |
| US10054994B2 (en) | 2015-04-04 | 2018-08-21 | Indian Institute Of Technology Bombay | Non-uniform intensity mapping using high performance enterprise computing system |
| KR102285481B1 (ko) * | 2015-04-09 | 2021-08-02 | 에스케이하이닉스 주식회사 | NoC 반도체 장치의 태스크 매핑 방법 |
| 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 |
| US9465664B1 (en) * | 2015-09-09 | 2016-10-11 | Honeywell International Inc. | Systems and methods for allocation of environmentally regulated slack |
| CN106873545A (zh) * | 2015-12-14 | 2017-06-20 | 重庆森坦科技有限公司 | 一种基于fpga的实时多任务调度系统 |
| WO2017131667A1 (en) * | 2016-01-27 | 2017-08-03 | Hewlett Packard Enterprise Development Lp | Core characterization for processor cores |
| US10452437B2 (en) * | 2016-06-24 | 2019-10-22 | Advanced Micro Devices, Inc. | Temperature-aware task scheduling and proactive power management |
| US9747139B1 (en) | 2016-10-19 | 2017-08-29 | International Business Machines Corporation | Performance-based multi-mode task dispatching in a multi-processor core system for high temperature avoidance |
| US9753773B1 (en) | 2016-10-19 | 2017-09-05 | International Business Machines Corporation | Performance-based multi-mode task dispatching in a multi-processor core system for extreme temperature avoidance |
| US11107021B2 (en) | 2016-11-06 | 2021-08-31 | Microsoft Technology Licensing, Llc | Presenting and manipulating task items |
| CN106656796B (zh) * | 2016-11-11 | 2020-04-24 | 中国人民解放军国防科学技术大学 | 一种基于温度等级的超前阶梯式缓冲区调节方法 |
| KR102643797B1 (ko) * | 2017-01-10 | 2024-03-05 | 삼성전자주식회사 | 동적 발열 관리 방법 |
| US11551990B2 (en) | 2017-08-11 | 2023-01-10 | Advanced Micro Devices, Inc. | Method and apparatus for providing thermal wear leveling |
| US11742038B2 (en) | 2017-08-11 | 2023-08-29 | Advanced Micro Devices, Inc. | Method and apparatus for providing wear leveling |
| KR102603299B1 (ko) * | 2017-12-08 | 2023-11-17 | 한국전자통신연구원 | 그래픽 처리 장치 및 이의 동작 방법 |
| KR102164716B1 (ko) * | 2018-07-19 | 2020-10-14 | 주식회사 다이얼로그 세미컨덕터 코리아 | 전원을 효율적으로 관리하기 위한 소프트웨어 운영 방법 및 이를 이용한 장치 |
| US11435813B2 (en) | 2018-08-29 | 2022-09-06 | Advanced Micro Devices, Inc. | Neural network power management in a multi-GPU system |
| US11121302B2 (en) | 2018-10-11 | 2021-09-14 | SeeQC, Inc. | System and method for superconducting multi-chip module |
| US11175952B2 (en) | 2020-02-21 | 2021-11-16 | International Business Machines Corporation | Leveraging thermal profiles of processing tasks to dynamically schedule execution of the processing tasks |
| CN113687980B (zh) * | 2020-05-19 | 2024-03-01 | 北京京东乾石科技有限公司 | 异常数据自恢复方法、系统、电子设备和可读存储介质 |
| US11740953B2 (en) | 2021-01-22 | 2023-08-29 | Google Llc | Solder joint damage-prevention mode for a computing device |
| US12417119B2 (en) * | 2021-03-19 | 2025-09-16 | Mediatek, Inc. | Thermal-aware task scheduling |
| US20240064941A1 (en) * | 2022-08-22 | 2024-02-22 | Mellanox Technologies, Ltd. | Systems and methods for controlling temperature in a server |
| US12117882B2 (en) | 2023-01-16 | 2024-10-15 | Hamilton Sundstrand Corporation | System and method for reducing power consumption in computing systems |
Family Cites Families (196)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3576544A (en) | 1968-10-18 | 1971-04-27 | Ibm | Storage protection system |
| JPS5412643Y2 (zh) | 1971-08-12 | 1979-06-02 | ||
| US4037214A (en) | 1976-04-30 | 1977-07-19 | International Business Machines Corporation | Key register controlled accessing system |
| JPS54146555U (zh) | 1978-04-03 | 1979-10-12 | ||
| JPS576952Y2 (zh) | 1978-12-01 | 1982-02-09 | ||
| DE3065051D1 (en) | 1979-09-01 | 1983-11-03 | Amp Inc | Method of terminating optical fibres |
| US4314349A (en) | 1979-12-31 | 1982-02-02 | Goodyear Aerospace Corporation | Processing element for parallel array processors |
| JPS6319058Y2 (zh) | 1980-01-17 | 1988-05-27 | ||
| US4332009A (en) | 1980-01-21 | 1982-05-25 | Mostek Corporation | Memory protection system |
| JPS56111962U (zh) | 1980-01-30 | 1981-08-29 | ||
| JPS56123051U (zh) | 1980-02-15 | 1981-09-18 | ||
| US4430705A (en) | 1980-05-23 | 1984-02-07 | International Business Machines Corp. | Authorization mechanism for establishing addressability to information in another address space |
| US4414624A (en) | 1980-11-19 | 1983-11-08 | The United States Of America As Represented By The Secretary Of The Navy | Multiple-microcomputer processing |
| JPS57176456A (en) | 1981-04-22 | 1982-10-29 | Fanuc Ltd | Data processing system |
| DE3171379D1 (en) | 1981-04-28 | 1985-08-22 | Ibm | Bus arrangement for interconnectiong circuit chips |
| JPS63758Y2 (zh) | 1981-04-30 | 1988-01-09 | ||
| AU542447B2 (en) | 1982-02-27 | 1985-02-21 | Fujitsu Limited | System for controlling key storage unit |
| JPS5920074U (ja) | 1982-07-28 | 1984-02-07 | 住友電気工業株式会社 | 圧電効果を利用した開閉弁 |
| JPS5958700A (ja) | 1982-09-29 | 1984-04-04 | Fujitsu Ltd | 記憶保護判定方式 |
| US4545016A (en) | 1983-01-07 | 1985-10-01 | Tandy Corporation | Memory management system |
| US4622631B1 (en) | 1983-12-30 | 1996-04-09 | Recognition Int Inc | Data processing system having a data coherence solution |
| US5159700A (en) | 1984-01-16 | 1992-10-27 | Texas Instruments Incorporated | Substrate with optical communication systems between chips mounted thereon and monolithic integration of optical I/O on silicon substrates |
| JPS61180352U (zh) | 1985-04-25 | 1986-11-11 | ||
| US4732446A (en) | 1985-10-02 | 1988-03-22 | Lamar Gipson | Electrical circuit and optical data buss |
| AU571377B2 (en) | 1985-11-13 | 1988-04-14 | Fujitsu Limited | Main storage access control system |
| US5274797A (en) * | 1986-05-30 | 1993-12-28 | Bull Hn Information Systems Inc. | Multiprocessor system with centralized initialization, testing and monitoring of the system and providing centralized timing |
| JPS6241986A (ja) | 1986-08-29 | 1987-02-23 | Hitachi Ltd | オイルフリースクリユー圧縮機結合体 |
| JPS6365222A (ja) | 1986-09-03 | 1988-03-23 | Tokyo Tatsuno Co Ltd | 触媒燃焼装置 |
| US4914657A (en) | 1987-04-15 | 1990-04-03 | Allied-Signal Inc. | Operations controller for a fault tolerant multiple node processing system |
| JP2960415B2 (ja) | 1987-05-22 | 1999-10-06 | 株式会社日立製作所 | 記憶保護方法および装置 |
| JPH0719704Y2 (ja) | 1987-07-31 | 1995-05-10 | シャープ株式会社 | 生産ラインの生産管理装置 |
| JPH0612333Y2 (ja) | 1987-12-28 | 1994-03-30 | 株式会社ゼクセル | 車両用熱焼式ヒータの燃焼器 |
| JP2677589B2 (ja) | 1988-02-26 | 1997-11-17 | 株式会社東芝 | 携帯可能電子装置およびicチップ |
| US5056000A (en) | 1988-06-21 | 1991-10-08 | International Parallel Machines, Inc. | Synchronized parallel processing with shared memory |
| US4939682A (en) | 1988-07-15 | 1990-07-03 | The Boeing Company | Integrated electro-optic arithmetic/logic unit and method for making the same |
| EP0369052A1 (en) | 1988-11-17 | 1990-05-23 | International Business Machines Corporation | Data base access system |
| JPH02210542A (ja) | 1989-02-10 | 1990-08-21 | Fujitsu Ltd | 仮想計算機システムにおける実行制御方式 |
| US5222239A (en) * | 1989-07-28 | 1993-06-22 | Prof. Michael H. Davis | Process and apparatus for reducing power usage microprocessor devices operating from stored energy sources |
| EP0424618A3 (en) | 1989-10-24 | 1992-11-19 | International Business Machines Corporation | Input/output system |
| US5037173A (en) | 1989-11-22 | 1991-08-06 | Texas Instruments Incorporated | Optical interconnection network |
| JPH05506113A (ja) | 1990-01-05 | 1993-09-02 | マスパー・コンピューター・コーポレイション | 並列プロセッサメモリシステム |
| US5357632A (en) * | 1990-01-09 | 1994-10-18 | Hughes Aircraft Company | Dynamic task allocation in a multi-processor system employing distributed control processors and distributed arithmetic processors |
| US5396635A (en) * | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
| ATE170642T1 (de) | 1990-06-15 | 1998-09-15 | Compaq Computer Corp | Mehrstufeneinschluss in mehrstufigen cache- speicherhierarchien |
| US5093879A (en) | 1990-06-22 | 1992-03-03 | International Business Machines Corporation | Electro-optical connectors |
| US5144691A (en) | 1990-07-20 | 1992-09-01 | Cray Research, Inc. | Computer signal interconnect apparatus |
| US5303369A (en) | 1990-08-31 | 1994-04-12 | Texas Instruments Incorporated | Scheduling system for multiprocessor operating system |
| EP0481735A3 (en) | 1990-10-19 | 1993-01-13 | Array Technology Corporation | Address protection circuit |
| US5630162A (en) | 1990-11-13 | 1997-05-13 | International Business Machines Corporation | Array processor dotted communication network based on H-DOTs |
| US5590345A (en) * | 1990-11-13 | 1996-12-31 | International Business Machines Corporation | Advanced parallel array processor(APAP) |
| KR940004404B1 (ko) | 1990-11-30 | 1994-05-25 | 삼성전자 주식회사 | 불휘발성 반도체 메모리장치 |
| US5131054A (en) | 1991-01-09 | 1992-07-14 | Thinking Machines Corporation | Character recognition system using massively parallel computer that identifies a query character using degree of similarity with plurality of training characters of known identity |
| JPH04284754A (ja) | 1991-03-14 | 1992-10-09 | Fujitsu Ltd | Atm交換装置 |
| JPH04288643A (ja) | 1991-03-18 | 1992-10-13 | Nec Corp | マルチプロセッサシステムのメモリマッピング方式 |
| US5519875A (en) | 1991-08-08 | 1996-05-21 | Hitachi, Ltd. | Distributed processing system for modules, each having modularized objects |
| US5404563A (en) | 1991-08-28 | 1995-04-04 | International Business Machines Corporation | Scheduling normally interchangeable facilities in multiprocessor computer systems |
| US5361370A (en) | 1991-10-24 | 1994-11-01 | Intel Corporation | Single-instruction multiple-data processor having dual-ported local memory architecture for simultaneous data transmission on local memory ports and global port |
| JP3364937B2 (ja) | 1991-11-29 | 2003-01-08 | 株式会社日立製作所 | 並列演算装置 |
| US5268973A (en) | 1992-01-21 | 1993-12-07 | The University Of Texas System | Wafer-scale optical bus |
| JPH05242057A (ja) | 1992-02-27 | 1993-09-21 | Sanyo Electric Co Ltd | マルチプロセッサシステムの起動方式 |
| JPH05257907A (ja) | 1992-03-11 | 1993-10-08 | Hitachi Ltd | オンチップマルチプロセッサシステム |
| JPH05324589A (ja) | 1992-03-25 | 1993-12-07 | Nippon Sheet Glass Co Ltd | 並列コンピュータ装置および光結合装置 |
| US5452401A (en) * | 1992-03-31 | 1995-09-19 | Seiko Epson Corporation | Selective power-down for high performance CPU/system |
| US5394524A (en) | 1992-08-07 | 1995-02-28 | International Business Machines Corporation | Method and apparatus for processing two graphics data streams in parallel |
| EP0610583A1 (en) | 1993-02-08 | 1994-08-17 | International Business Machines Corporation | Multizone relocation facility computer memory system |
| US5619671A (en) | 1993-04-19 | 1997-04-08 | International Business Machines Corporation | Method and apparatus for providing token controlled access to protected pages of memory |
| JPH07168726A (ja) * | 1993-12-16 | 1995-07-04 | Matsushita Electric Ind Co Ltd | 電子計算機及びマルチプロセスオペレーティングシステムのスケジューリング方法 |
| US5745778A (en) * | 1994-01-26 | 1998-04-28 | Data General Corporation | Apparatus and method for improved CPU affinity in a multiprocessor system |
| GB2287555A (en) | 1994-02-25 | 1995-09-20 | Motorola Gmbh | An adjustable clock generator system. |
| US5487146A (en) | 1994-03-08 | 1996-01-23 | Texas Instruments Incorporated | Plural memory access address generation employing guide table entries forming linked list |
| US5815403A (en) * | 1994-04-19 | 1998-09-29 | Lsi Logic Corporation | Fail-safe distributive processing method for producing a highest fitness cell placement for an integrated circuit chip |
| JPH07287064A (ja) | 1994-04-20 | 1995-10-31 | Mitsubishi Electric Corp | レーダ信号処理装置 |
| DE69532596T2 (de) | 1994-05-09 | 2004-08-05 | Canon K.K. | Verfahren zur Steuerung der Stromversorgung in einer Mehrprozessbetriebsumgebung |
| US5513337A (en) | 1994-05-25 | 1996-04-30 | Intel Corporation | System for protecting unauthorized memory accesses by comparing base memory address with mask bits and having attribute bits for identifying access operational mode and type |
| JPH0816531A (ja) | 1994-06-28 | 1996-01-19 | Hitachi Ltd | プロセススケジュール方式 |
| JPH0883257A (ja) | 1994-09-13 | 1996-03-26 | Hitachi Ltd | 並列コンピュータシステムのプロセス実行最適化方法 |
| JPH08161283A (ja) | 1994-12-07 | 1996-06-21 | Sony Corp | 複数プロセツサシステム |
| US5754436A (en) * | 1994-12-22 | 1998-05-19 | Texas Instruments Incorporated | Adaptive power management processes, circuits and systems |
| JPH08180018A (ja) | 1994-12-26 | 1996-07-12 | Toshiba Corp | 分散処理システム及び分散処理方法 |
| US6192479B1 (en) * | 1995-01-19 | 2001-02-20 | Texas Instruments Incorporated | Data processing with progressive, adaptive, CPU-driven power management |
| US5715184A (en) * | 1995-01-23 | 1998-02-03 | Motorola, Inc. | Method of parallel simulation of standard cells on a distributed computer system |
| JPH08212178A (ja) | 1995-02-08 | 1996-08-20 | Hitachi Ltd | 並列計算機 |
| EP0730237A1 (en) | 1995-02-28 | 1996-09-04 | Nec Corporation | Multi-processor system with virtually addressable communication registers and controlling method thereof |
| JP2731742B2 (ja) | 1995-02-28 | 1998-03-25 | 甲府日本電気株式会社 | クラスタ構成の並列計算機 |
| JPH08249261A (ja) | 1995-03-08 | 1996-09-27 | Mitsubishi Electric Corp | メッセージ管理システム |
| DE19508723A1 (de) | 1995-03-10 | 1996-09-12 | Siemens Ag | Mehrbenutzerdatenverarbeitungsanlage mit Speicherschutz |
| US5850534A (en) | 1995-06-05 | 1998-12-15 | Advanced Micro Devices, Inc. | Method and apparatus for reducing cache snooping overhead in a multilevel cache system |
| JPH09138716A (ja) | 1995-11-14 | 1997-05-27 | Toshiba Corp | 電子計算機 |
| US6331856B1 (en) | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
| JP3786993B2 (ja) | 1995-12-14 | 2006-06-21 | 株式会社日立製作所 | データ記憶ユニット及び該ユニットを用いたデータ記憶装置 |
| US6886167B1 (en) | 1995-12-27 | 2005-04-26 | International Business Machines Corporation | Method and system for migrating an object between a split status and a merged status |
| JPH09198361A (ja) | 1996-01-23 | 1997-07-31 | Kofu Nippon Denki Kk | マルチプロセッサシステム |
| US5729712A (en) | 1996-01-26 | 1998-03-17 | Unisys Corporation | Smart fill system for multiple cache network |
| US5761516A (en) * | 1996-05-03 | 1998-06-02 | Lsi Logic Corporation | Single chip multiprocessor architecture with internal task switching synchronization bus |
| JPH09311839A (ja) | 1996-05-21 | 1997-12-02 | Hitachi Ltd | データ共用方式 |
| US5940870A (en) | 1996-05-21 | 1999-08-17 | Industrial Technology Research Institute | Address translation for shared-memory multiprocessor clustering |
| US5900019A (en) | 1996-05-23 | 1999-05-04 | International Business Machines Corporation | Apparatus for protecting memory storage blocks from I/O accesses |
| US5787309A (en) | 1996-05-23 | 1998-07-28 | International Business Machines Corporation | Apparatus for protecting storage blocks from being accessed by unwanted I/O programs using I/O program keys and I/O storage keys having M number of bits |
| US5724551A (en) | 1996-05-23 | 1998-03-03 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries include storage keys for controlling accesses to the buffers |
| US5740409A (en) * | 1996-07-01 | 1998-04-14 | Sun Microsystems, Inc. | Command processor for a three-dimensional graphics accelerator which includes geometry decompression capabilities |
| AT1751U1 (de) | 1996-09-30 | 1997-10-27 | Kuehn Eva | Koordinations-system |
| JPH10126771A (ja) | 1996-10-15 | 1998-05-15 | Toshiba Corp | 画像データ転送システムにおける画像データ送出レート制御方法および画像データ転送方法 |
| JP3567354B2 (ja) | 1996-12-26 | 2004-09-22 | 株式会社リコー | マルチプロセッサシステムおよび命令作成装置 |
| JP3421526B2 (ja) | 1997-02-14 | 2003-06-30 | モトローラ株式会社 | デ−タ処理装置 |
| US6424988B2 (en) | 1997-02-19 | 2002-07-23 | Unisys Corporation | Multicomputer system |
| US6192514B1 (en) | 1997-02-19 | 2001-02-20 | Unisys Corporation | Multicomputer system |
| US6289434B1 (en) | 1997-02-28 | 2001-09-11 | Cognigine Corporation | Apparatus and method of implementing systems on silicon using dynamic-adaptive run-time reconfigurable circuits for processing multiple, independent data and control streams of varying rates |
| JP3739888B2 (ja) | 1997-03-27 | 2006-01-25 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置および方法 |
| JP3681026B2 (ja) | 1997-03-27 | 2005-08-10 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置および方法 |
| US6212605B1 (en) | 1997-03-31 | 2001-04-03 | International Business Machines Corporation | Eviction override for larx-reserved addresses |
| JPH1139215A (ja) | 1997-05-22 | 1999-02-12 | Matsushita Electric Ind Co Ltd | キャッシュメモリおよびキャッシュメモリを制御する方法 |
| JPH10340165A (ja) | 1997-06-09 | 1998-12-22 | Canon Inc | 情報処理装置及びその方法並びにメモリ媒体 |
| JP3490256B2 (ja) | 1997-06-12 | 2004-01-26 | 三菱電機株式会社 | エージェント方式 |
| US5892966A (en) | 1997-06-27 | 1999-04-06 | Sun Microsystems, Inc. | Processor complex for executing multimedia functions |
| US6360303B1 (en) | 1997-09-30 | 2002-03-19 | Compaq Computer Corporation | Partitioning memory shared by multiple processors of a distributed processing system |
| US6567839B1 (en) | 1997-10-23 | 2003-05-20 | International Business Machines Corporation | Thread switch control in a multithreaded processor system |
| US6209065B1 (en) | 1997-10-24 | 2001-03-27 | Compaq Computer Corporation | Mechanism for optimizing generation of commit-signals in a distributed shared-memory system |
| US6002409A (en) * | 1997-10-29 | 1999-12-14 | Cirrus Logic, Inc. | Arbitration for shared graphics processing resources |
| US6542926B2 (en) | 1998-06-10 | 2003-04-01 | Compaq Information Technologies Group, L.P. | Software partitioned multi-processor system with flexible resource sharing levels |
| US6965974B1 (en) | 1997-11-14 | 2005-11-15 | Agere Systems Inc. | Dynamic partitioning of memory banks among multiple agents |
| US6173389B1 (en) | 1997-12-04 | 2001-01-09 | Billions Of Operations Per Second, Inc. | Methods and apparatus for dynamic very long instruction word sub-instruction selection for execution time parallelism in an indirect very long instruction word processor |
| JPH11202988A (ja) | 1998-01-13 | 1999-07-30 | Hitachi Ltd | システム消費電力制御方法 |
| JPH11232247A (ja) | 1998-02-10 | 1999-08-27 | Hitachi Ltd | データフロー計算機およびデータフロー制御方法 |
| US6008685A (en) * | 1998-03-25 | 1999-12-28 | Mosaic Design Labs, Inc. | Solid state temperature measurement |
| US6167430A (en) | 1998-05-12 | 2000-12-26 | Unisys Corporation | Multicomputer with distributed directory and operating system |
| JPH11338833A (ja) | 1998-05-22 | 1999-12-10 | Hitachi Ltd | マルチプロセッサ型コントローラ及びスケーラブルコントローラシステム |
| US6947987B2 (en) | 1998-05-29 | 2005-09-20 | Ncr Corporation | Method and apparatus for allocating network resources and changing the allocation based on dynamic workload changes |
| US6336187B1 (en) | 1998-06-12 | 2002-01-01 | International Business Machines Corp. | Storage system with data-dependent security |
| US6209066B1 (en) | 1998-06-30 | 2001-03-27 | Sun Microsystems, Inc. | Method and apparatus for memory allocation in a multi-threaded virtual machine |
| US6141762A (en) | 1998-08-03 | 2000-10-31 | Nicol; Christopher J. | Power reduction in a multiprocessor digital signal processor based on processor load |
| JP3224782B2 (ja) | 1998-08-03 | 2001-11-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 処理分担動的変更方法及びコンピュータ |
| JP2000132529A (ja) * | 1998-10-23 | 2000-05-12 | Sony Corp | 並列処理装置、並列処理方法および記録媒体 |
| US6643708B1 (en) | 1998-10-29 | 2003-11-04 | International Business Machines Corporation | Systems, methods and computer program products for chaining Java servlets across networks |
| US6633563B1 (en) * | 1999-03-02 | 2003-10-14 | Nortel Networks Limited | Assigning cell data to one of several processors provided in a data switch |
| JP3790060B2 (ja) | 1999-01-29 | 2006-06-28 | 株式会社山武 | 演算処理装置 |
| US6341338B1 (en) | 1999-02-04 | 2002-01-22 | Sun Microsystems, Inc. | Protocol for coordinating the distribution of shared memory |
| JP4123621B2 (ja) | 1999-02-16 | 2008-07-23 | 株式会社日立製作所 | 主記憶共有型マルチプロセッサシステム及びその共有領域設定方法 |
| US6480941B1 (en) | 1999-02-23 | 2002-11-12 | International Business Machines Corporation | Secure partitioning of shared memory based multiprocessor system |
| US6753878B1 (en) * | 1999-03-08 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | Parallel pipelined merge engines |
| US6647208B1 (en) | 1999-03-18 | 2003-11-11 | Massachusetts Institute Of Technology | Hybrid electronic/optical switch system |
| US6345362B1 (en) | 1999-04-06 | 2002-02-05 | International Business Machines Corporation | Managing Vt for reduced power using a status table |
| US6477170B1 (en) | 1999-05-21 | 2002-11-05 | Advanced Micro Devices, Inc. | Method and apparatus for interfacing between systems operating under different clock regimes with interlocking to prevent overwriting of data |
| EP1065592B1 (en) | 1999-06-25 | 2008-07-23 | Canon Research Centre France S.A. | Shared management of data objects in a communication network |
| US6467012B1 (en) | 1999-07-08 | 2002-10-15 | International Business Machines Corporation | Method and apparatus using a distributed system structure to support bus-based cache-coherence protocols for symmetric multiprocessors |
| US6668317B1 (en) | 1999-08-31 | 2003-12-23 | Intel Corporation | Microengine for parallel processor architecture |
| US6198245B1 (en) * | 1999-09-20 | 2001-03-06 | O2 Micro International Ltd. | Look-ahead closed-loop thermal management |
| ATE277378T1 (de) | 1999-10-25 | 2004-10-15 | Texas Instruments Inc | Intelligente leistungssteuerung in verteilten verarbeitungssystemen |
| JP4049957B2 (ja) | 1999-10-29 | 2008-02-20 | 富士ゼロックス株式会社 | マルチプロセッサシステム |
| US6577311B1 (en) | 1999-12-16 | 2003-06-10 | Picture Iq Corporation | Techniques for automatically providing a high-resolution rendering of a low resolution digital image in a distributed network |
| US6564328B1 (en) * | 1999-12-23 | 2003-05-13 | Intel Corporation | Microprocessor with digital power throttle |
| US6694380B1 (en) | 1999-12-27 | 2004-02-17 | Intel Corporation | Mapping requests from a processing unit that uses memory-mapped input-output space |
| JP2001195230A (ja) | 2000-01-14 | 2001-07-19 | Mitsubishi Electric Corp | 描画処理システム、及び描画演算を行う半導体集積回路 |
| US6694336B1 (en) | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
| US6807620B1 (en) | 2000-02-11 | 2004-10-19 | Sony Computer Entertainment Inc. | Game system with graphics processor |
| KR100319708B1 (ko) | 2000-02-11 | 2002-01-09 | 전주식 | 방향 분리 이중 링 구조의 분산된 공유 메모리 다중프로세서 시스템 |
| US6799207B1 (en) | 2000-04-10 | 2004-09-28 | International Business Machines Corporation | Method and system for downloading software managed trees in a network processing system |
| JP2002064145A (ja) | 2000-06-09 | 2002-02-28 | Fujitsu Ltd | 冗長素子を備える集積回路チップ、マルチプロセッサおよびその製法 |
| JP4640880B2 (ja) | 2000-07-14 | 2011-03-02 | 国立大学法人東京工業大学 | マイクロプロセッサシステム |
| US6269043B1 (en) * | 2000-07-31 | 2001-07-31 | Cisco Technology, Inc. | Power conservation system employing a snooze mode |
| EP1182556B1 (en) * | 2000-08-21 | 2009-08-19 | Texas Instruments France | Task based adaptive profiling and debugging |
| EP1182552A3 (en) | 2000-08-21 | 2003-10-01 | Texas Instruments France | Dynamic hardware configuration for energy management systems using task attributes |
| US7681018B2 (en) | 2000-08-31 | 2010-03-16 | Intel Corporation | Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set |
| US6625737B1 (en) * | 2000-09-20 | 2003-09-23 | Mips Technologies Inc. | System for prediction and control of power consumption in digital system |
| JP2002098594A (ja) * | 2000-09-25 | 2002-04-05 | Toshiba Corp | 温度センサ装置 |
| US20030069985A1 (en) * | 2000-10-02 | 2003-04-10 | Eduardo Perez | Computer readable media for storing video data |
| US7174194B2 (en) * | 2000-10-24 | 2007-02-06 | Texas Instruments Incorporated | Temperature field controlled scheduling for processing systems |
| AU2002236667A1 (en) | 2000-10-31 | 2002-05-21 | Millennial Net, Inc. | Networked processing system with optimized power efficiency |
| US6631440B2 (en) * | 2000-11-30 | 2003-10-07 | Hewlett-Packard Development Company | Method and apparatus for scheduling memory calibrations based on transactions |
| US6779049B2 (en) | 2000-12-14 | 2004-08-17 | International Business Machines Corporation | Symmetric multi-processing system with attached processing units being able to access a shared memory without being structurally configured with an address translation mechanism |
| US6865631B2 (en) | 2000-12-14 | 2005-03-08 | International Business Machines Corporation | Reduction of interrupts in remote procedure calls |
| US7020871B2 (en) | 2000-12-21 | 2006-03-28 | Intel Corporation | Breakpoint method for parallel hardware threads in multithreaded processor |
| US6748501B2 (en) | 2000-12-30 | 2004-06-08 | International Business Machines Corporation | Microprocessor reservation mechanism for a hashed address system |
| US6779045B2 (en) * | 2001-03-21 | 2004-08-17 | Intel Corporation | System and apparatus for increasing the number of operations per transmission for a media management system |
| US6526491B2 (en) | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
| US7233998B2 (en) | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
| US6922726B2 (en) * | 2001-03-23 | 2005-07-26 | International Business Machines Corporation | Web accessibility service apparatus and method |
| JP2003167751A (ja) | 2001-04-24 | 2003-06-13 | Ricoh Co Ltd | プロセッサ処理方法およびプロセッサシステム |
| US6901522B2 (en) * | 2001-06-07 | 2005-05-31 | Intel Corporation | System and method for reducing power consumption in multiprocessor system |
| JP3610930B2 (ja) | 2001-07-12 | 2005-01-19 | 株式会社デンソー | オペレーティングシステム、プログラム、車両用電子制御装置 |
| US20030055969A1 (en) | 2001-09-17 | 2003-03-20 | International Business Machines Corporation | System and method for performing power management on a distributed system |
| JP4050027B2 (ja) * | 2001-09-28 | 2008-02-20 | 株式会社日立製作所 | 情報処理装置及び情報処理装置の制御方法 |
| US20030079151A1 (en) * | 2001-10-18 | 2003-04-24 | International Business Machines Corporation | Energy-aware workload distribution |
| US7203943B2 (en) | 2001-10-31 | 2007-04-10 | Avaya Technology Corp. | Dynamic allocation of processing tasks using variable performance hardware platforms |
| US6804632B2 (en) * | 2001-12-06 | 2004-10-12 | Intel Corporation | Distribution of processing activity across processing hardware based on power consumption considerations |
| US7318164B2 (en) * | 2001-12-13 | 2008-01-08 | International Business Machines Corporation | Conserving energy in a data processing system by selectively powering down processors |
| US7096145B2 (en) * | 2002-01-02 | 2006-08-22 | Intel Corporation | Deterministic power-estimation for thermal control |
| US6775787B2 (en) | 2002-01-02 | 2004-08-10 | Intel Corporation | Instruction scheduling based on power estimation |
| JP2003256067A (ja) | 2002-03-01 | 2003-09-10 | Mitsubishi Electric Corp | 省電力制御方式及び省電力制御方法及びプログラム及び記録媒体 |
| JPWO2003083693A1 (ja) | 2002-04-03 | 2005-08-04 | 富士通株式会社 | 分散処理システムにおけるタスクスケジューリング装置 |
| US6948082B2 (en) * | 2002-05-17 | 2005-09-20 | International Business Machines Corporation | Method and apparatus for software-assisted thermal management for electronic systems |
| US7254812B1 (en) * | 2002-05-31 | 2007-08-07 | Advanced Micro Devices, Inc. | Multi-processor task scheduling |
| US7086058B2 (en) * | 2002-06-06 | 2006-08-01 | International Business Machines Corporation | Method and apparatus to eliminate processor core hot spots |
| US7100060B2 (en) * | 2002-06-26 | 2006-08-29 | Intel Corporation | Techniques for utilization of asymmetric secondary processing resources |
| JP3673245B2 (ja) * | 2002-06-28 | 2005-07-20 | 株式会社東芝 | 情報処理装置および同装置における電源制御方法 |
| JP2004103347A (ja) | 2002-09-09 | 2004-04-02 | Sumitomo Wiring Syst Ltd | コネクタ |
| JP4934954B2 (ja) * | 2003-10-15 | 2012-05-23 | 日亜化学工業株式会社 | ヒートシンク及びヒートシンクを備えた半導体装置 |
-
2004
- 2004-03-29 US US10/812,177 patent/US8224639B2/en active Active
-
2005
- 2005-03-25 JP JP2005088403A patent/JP4053547B2/ja not_active Expired - Lifetime
- 2005-03-28 KR KR1020067022624A patent/KR101120215B1/ko not_active Expired - Fee Related
- 2005-03-28 AT AT05727578T patent/ATE387663T1/de not_active IP Right Cessation
- 2005-03-28 EP EP05727578A patent/EP1730635B1/en not_active Expired - Lifetime
- 2005-03-28 WO PCT/JP2005/006523 patent/WO2005096150A1/en not_active Ceased
- 2005-03-28 CN CNB2005800103859A patent/CN100504790C/zh not_active Expired - Lifetime
- 2005-03-28 DE DE602005005035T patent/DE602005005035T2/de not_active Expired - Lifetime
- 2005-03-29 TW TW094109855A patent/TW200602885A/zh not_active IP Right Cessation
-
2012
- 2012-05-16 US US13/473,033 patent/US8751212B2/en not_active Expired - Lifetime
-
2014
- 2014-05-02 US US14/268,433 patent/US9183051B2/en not_active Expired - Lifetime
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI463833B (zh) * | 2012-10-31 | 2014-12-01 | Delta Electronics Inc | 感測器資料的快取裝置及其快取方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2005096150B1 (en) | 2006-01-26 |
| JP4053547B2 (ja) | 2008-02-27 |
| DE602005005035T2 (de) | 2009-03-19 |
| JP2005285123A (ja) | 2005-10-13 |
| US9183051B2 (en) | 2015-11-10 |
| KR20060134185A (ko) | 2006-12-27 |
| US20140245314A1 (en) | 2014-08-28 |
| KR101120215B1 (ko) | 2012-03-16 |
| US20050216222A1 (en) | 2005-09-29 |
| CN1938687A (zh) | 2007-03-28 |
| US8751212B2 (en) | 2014-06-10 |
| ATE387663T1 (de) | 2008-03-15 |
| EP1730635B1 (en) | 2008-02-27 |
| CN100504790C (zh) | 2009-06-24 |
| DE602005005035D1 (de) | 2008-04-10 |
| EP1730635A2 (en) | 2006-12-13 |
| US20120266174A1 (en) | 2012-10-18 |
| WO2005096150A1 (en) | 2005-10-13 |
| TW200602885A (en) | 2006-01-16 |
| US8224639B2 (en) | 2012-07-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI345155B (zh) | ||
| JP3983250B2 (ja) | 演算処理方法および演算処理装置 | |
| US20240029488A1 (en) | Power management based on frame slicing | |
| US7770176B2 (en) | Multiprocessor computer and program | |
| Kong et al. | Recent thermal management techniques for microprocessors | |
| Xie et al. | Temperature-aware task allocation and scheduling for embedded multiprocessor systems-on-chip (MPSoC) design | |
| JP3830491B2 (ja) | プロセッサ、マルチプロセッサシステム、プロセッサシステム、情報処理装置および温度制御方法 | |
| Jejurikar et al. | Procrastination scheduling in fixed priority real-time systems | |
| Khan et al. | Offline Earliest Deadline first Scheduling based Technique for Optimization of Energy using STORM in Homogeneous Multi-core Systems | |
| Pagani et al. | Energy efficiency for clustered heterogeneous multicores | |
| JP2006107513A (ja) | 処理環境におけるパワー・マネジメント | |
| Salami et al. | Physical-aware task migration algorithm for dynamic thermal management of SMT multi-core processors | |
| Lee et al. | GOP-level dynamic thermal management in MPEG-2 decoding | |
| Chien et al. | A thermal-aware scheduling for multicore architectures | |
| Yun et al. | Thermal-aware scheduling of critical applications using job migration and power-gating on multi-core chips | |
| Niu et al. | Leakage-aware scheduling for embedded real-time systems with (m, k)-constraints | |
| Singh et al. | Thermal aware power save policy for hot and cold jobs | |
| Wang et al. | Cache latency control for application fairness or differentiation in power-constrained chip multiprocessors | |
| Singh et al. | AI-Augmented Temperature-Aware Scheduling in HPC: Using Multi-level Evolutionary Algorithm | |
| Lee et al. | Runtime 3-D stacked cache data management for energy minimization of 3-D chip-multiprocessors | |
| Saha et al. | PRECIOUS: Approximate Real-Time Computing in MLC-MRAM based Heterogeneous CMPs | |
| Fang et al. | RT-DBR: Dynamic Bandwidth Reservation for Real-Time Application on CPU-GPU Heterogeneous SoC | |
| Adegbija et al. | Thermal-aware phase-based tuning of embedded systems | |
| Nikitovic et al. | Adaptive shutdown scheduling strategies in chip-multiprocessor platforms for future mobile terminals | |
| JP2005285117A (ja) | プロセッサ、マルチプロセッサシステム、プロセッサシステム、情報処理装置および温度制御方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |